在前端开发的工作当中,使用npm run xxx命令启动本地开发环境。但是当执行npm run xxx命令后,究竟是如何触发各种构建工具的构建命令以及启动 Node 服务等功能的呢?
首先我们要知道,node作为JavaScript的运行时,可以把.js文件当做脚本来运行
执行npm run xxx时,首先会去项目的package.json文件中查找scripts里找对应的xxx,然后执行xxx的命令,例如启动vue项目 npm run dev的时候,就是执行了vue-cli-service serve这条命令。
既然npm run xxx是为了执行vue-cli-service serve,那为什么不直接执行vue-cli-service serve?

之所以不直接执行vue-cli-service serve,是因为系统中不存在存在vue-cli-service serve指令。
既然系统中不存在vue-cli-service serve指令,为什么执行npm run dev的时候,也就是执行vue-cli-service serve,为什么这样它就能成功,而且不报指令不存在的错误呢?
首先我们在安装依赖的时候,是通过npm install 来执行的,我们在安装vue/cli-service依赖的时候,就会在node_moduless/.bin/目录下创建好vue-cli-service为名的几个可执行的文件。

本文探讨了npm run命令如何触发构建和启动Node服务。在前端开发中,npm run会根据package.json中的scripts执行对应命令,如npm run dev实际上是执行vue-cli-service serve。由于系统中没有vue-cli-service serve全局命令,npm会在node_modules/.bin目录下找到软链接文件执行。npm install时,会创建这些软链接,并自动添加到PATH环境变量,使得无需全局安装即可运行依赖。文章还解释了在不同操作系统中如何执行这些命令以及bin目录下多个文件的原因。
最低0.47元/天 解锁文章
7524

被折叠的 条评论
为什么被折叠?



