主要流程如下:当执行 npm run xxx 时,首先会去项目的 package.json 文件里找 scripts 配置项对应的 xxx 命令,即相当于执行的是在 scripts 中配置命令对应的内容,例如启动 vue 项目 npm run serve 的时候,实际上是执行 vue-cli-service serve 的命令此时又会通过 ./node_modules/.bin 目录下查找对应的 可执行文件( xxx、xxx.CMD、xxx.ps1 ),需要提供三个不同的文件的原因是 区别在不同环境下执行命令时的区分,实质是通过 node 执行对应的 xxx.js 文件可执行文件中会包含其具体需要执行的 xxx.js 文件的路径,相当于最终是执行了 node xxx.js不直接执行对应命令,而配置 scripts 的原因主要是:基于 script 配置,可以重新命名对应的命令内容,见名知意直接执行 script 中对应的 命令 可能会发生异常,这种方式相当于是默认在全局安装过了对应的包,例如 只有全局安装了 vue-cli 才能直接使用 vue-cli-service本文参与了SegmentFault 思否面试闯关挑战赛,欢迎正在阅读的你也加入。
主要流程如下:
不直接执行对应命令,而配置 scripts 的原因主要是: