「这是我参与2022首次更文挑战的第37天,活动详情查看:2022首次更文挑战」
前两篇中我们介绍了 yeoman 的用户交互、文件系统,这篇我们就通过他们来实现 vue 项目的 generator。要做的事情非常简单:
第一步:通过 vue-cli 创建一个 vue 标准项目;
第二步:把常用的工具类、组件等添加到工程;
第三步:把上面的工程拷贝到 templates 目录下;
第四步:修改 generator/app/index.js 文件中的模板拷贝代码,拷贝 templates 下所有文件夹和文件
async setup() {
const ans = await this.prompt([{
type: 'input',
name: 'name',
message: 'Your project name.',
default: this.appname
}])
this.fs.copyTpl(this.templatePath(), this.destinationPath(ans.name), {
appname: ans.name
})
}
第五步:修改 package.json 的配置项 "name": "generator-vue",并且重新 link
npm link
至此,我们就完成了 vue generator 的开发,在命令行中可以用 yo vue 创建初始化项目。