脚手架原理
脚手架简介
脚手架本质是一个操作系统的客户端,它通过命令执行
vue create vue-test-app --force -r https://registry.npm.taobao.org
这条命令由四部分组成:
- 主命令:vue
- command:create
- command 的 param:vue-test-app
- option:- --force:可以理解为- --force true,可简写为- -f trueor- -f
- -r https://...:- https://...是- -r的- param
 
脚手架执行原理
- 在终端输入命令:`vue create vue-test-app` - 终端解析出`vue`命令:`which vue`(`win`用`git bash`) - 终端在环境变量中找到`vue`命令 - 终端根据`vue`命令链接到实际文件`vue.js` - 终端利用`node`执行`vue.js` - `vue.js`解析`command/options` - `vue.js`执行`command` - 执行完毕,退出执行从应用的角度看如何开发一个脚手架?
vue-cli为例
- 开发npm项目,该项目中应包含一个bin/vue.js文件,并将这个项目发布到npm
- 将npm项目安装到node的lib/node_modules
- 在node的bin目录配置下vue软连接指向lib/node_modules/@vue/cli/bin/vue.js
这样就完成了在执行vue命令的时候就可以找到vue.js进行执行
疑问?
- 为什么全局安装@vue/cli后会添加的命令为vuenpm install -g @vue/cli
- 全局安装@vue/cli时发生了什么
- 为什么vue指向一个js文件,我们却可以直接通过vue命令直接去执行它
开发一个原生脚手架
- 源码cxvh-cli-test
- 安装npm i -g cxvh-cli-test
原生开发痛点分析:
- 痛点一:重复操作- 多package本地link
- 多package依赖安装
- 多package单元测试
- 多package代码发布
- 多package代码提交
 
- 多
- 痛点二:版本一致性- 发布时版本一致性
- 发布后相互依赖版本升级
 
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 BARAN的小站🔥🔥🔥!








