正如Sagiv bg指出的那样,该npm start
命令是的快捷方式npm run start
。我只是想添加一个真实的例子来进一步说明它。
下面的设置来自create-react-app
github仓库。该package.json
限定了一堆限定了实际流量脚本。
"scripts": {
"start": "npm-run-all -p watch-css start-js",
"build": "npm run build-css && react-scripts build",
"watch-css": "npm run build-css && node-sass-chokidar --include-path ./src --include-path ./node_modules src/ -o src/ --watch --recursive",
"build-css": "node-sass-chokidar --include-path ./src --include-path ./node_modules src/ -o src/",
"start-js": "react-scripts start"
},
为了清楚起见,我添加了一个图表。
蓝色框是对脚本的引用,您可以使用npm run <script-name>
命令直接执行所有脚本。但是正如您所看到的,实际上只有2个实际流程:
npm run start
npm run build
灰色框是可以从命令行执行的命令。
因此,例如,如果您运行npm start
(或npm run start
)实际转换为npm-run-all -p watch-css start-js
从命令行执行的命令。
就我而言,我有一个特殊的npm-run-all
命令,它是一个流行的插件,用于搜索以“ build:”开头的脚本,并执行所有这些命令。我实际上没有与该模式匹配的任何东西。但是它也可以用于并行运行多个命令,在此使用-p <command1> <command2>
开关进行操作。因此,这里执行2个脚本,即watch-css
和start-js
。(最后提到的那些脚本是监视文件更改的观察者,并且仅在被杀死时才会完成。)
总之,该npm start
命令是可配置的。如果您想知道它的作用,则必须检查该package.json
文件。(而且当事情变得复杂时,您可能希望制作一些图表)。
npm
您运行诸如此类的脚本时npm run scriptName
,npm start
也是“npm run start