首先脚手架功能比较简单,只是拉取远程的模板项目到本地,再执行npm install
先贴上项目结构,bin目录存放的是我们node执行文件的入口,command目录存放的是现实的命令,目前只实现了“create”命令,template目录存放我们的模板项目,就是我们在执行命令后拉取的项目
第一步就是要说明入口文件smy.js了,入口文件用来注册命令,比较简单
主要就是了解commander类库,这个类库主要是提供用户命令行输入和参数解析
接下来就是create命令文件了,第一张图是使用到的模块,第二张图是导出的函数,也就是命令的执行方法
首先co是一个迭代器模块,搭配co-prompt可以用同步的方式获取用户在命令行的输入,fs-extra是fs的扩展模块,方便我们清理文件夹,以及复制template下的模板项目