用Yoeman 打造自己的脚手架

504 阅读1分钟

一、generator创建

npm install -g yo #yo使用之前删除node_model、dist不需要的目录
npm install -g generator-generator
yo generator  #填写generator配置,name以generator-开头。例: generator-sampson

#关于内部运作机制见官网:Creating a generator -> Running Context
#可在生成的generator的/generators/app/index.js中配置

prompts 配置eslint、选择配置选项、加载特殊的依赖库
writing 拷贝文件
install 安装依赖

二、generator配置

  1. 将精简过的工程项目复制到: /generator-sampson/generators/app/templates
  2. 修改prompts中的name和writing中的两个路径
#path: /generator-sampson/generators/app/index.js
const prompts = [
  name: 'install'
]

writing() {
  this.fs.copy(
    this.templatePath('**'),  #复制templates下的所有文件到generator 
    this.destinationPath('./')
  );
}
  1. 在/generator-sampson 执行npm link: 把当前目录下的依赖包链接到全局
  2. 在其他目录执行yo sampson命令
  3. 如有警告提示安装bower包管理,可关闭bower
#path: /generator-sampson/generators/app/templates
install() {
    this.installDependencies({
        bower: false
    });
}

三、generator发布

发布方法同 npm包发布

四、generator使用

npm install -g yo
npm install -g generator-sampson
yo sampson