npm run 原理
npm run xxx 发生了什么?
图片中直接执行 npm run dev 发生了什么?
读取package.json 中scripts 对象中对应的脚本命令,发现vite是一个可执行命令他的查找规则
- 先从本地的node_modules/.bin去查找是否有vite这命令
- 如果没有就去全局的node_modules/.bin去查找是否 有vite命令
- 如果没有就去环境变量查找
- 最后找不到就直接报错
如果找到会有这三个文件
为什么有三个文件呢?因为node是可以跨平台执行的
- 图中
vite扩展名其实 是.sh是给 Liux、Unix、Macos 使用的 - vite.cmd文件 就是给windows系统cmd去使用的
- vite.ps1文件 就是给windows系统 Powershell
npm生命周期
其实 npm执行命令也有生命周期
{
"scripts":{
"predev":"node pre.js",
"dev":"node index.js",
"postdev": "node post.js"
}
}
当我执行了 npm run dev 他首先会先去执行pre.js 里面的东西 然后在去执行index.js里面东西
再去执行post.js里面东西
-
这个是怎么执行的呢?
-
首先 如果我们如果 使用
npm run test首先他会执行yarn clean这个命令 先删除之前的临时的文件 -
然后才去执行test 命令
-
-
运用场景:当我们 执行
npm run build打包的时候 首先要删除 上一次打包dist文件里面东西 再去进行打包