一:package.json
在某个文件路径下,执行 npm init。就会生成package.json文件。大致如下:
{
"name": "test",
"version": "1.0.0",
"description": "测试",
"main": "index.js",
"scripts": {
"build": "webpack",
"serve": "npx webpack serve"
},
"author": "sunquan",
"license": "ISC"
}
其中scripts中的命令会在npm run xxx时执行,比如
执行npm run build,就会去执行 webpack
二:npx
1、什么是npx?
npm自带npx,只要安装了高版本的npm,即可使用npx。npx命令会先检查当前项node_modules/
下,是否存在。不存在的话,就检查全局是否已经安装对应的模块。如果还没有的话,就去仓库里面去下载对应的模块,下载完毕就执行。执行完毕就删除,不留下一丝痕迹!
2、npm和npx区别?
npx
侧重于执行命令的,执行某个模块命令。虽然会自动安装模块,但是重在执行某个命令。npm
侧重于安装或者卸载某个模块的。重在安装,并不具备执行某个模块的功能。
3、npx优缺点
npx
命令的优点就是:可以智能识别,甚至主动下载。保证对应命令一定会执行完成。npx
命令的缺点就是:主动下载的文件,用完就会删除。下次还要再次下载,耗时耗资源!
4、使用场景
- 不想安装相关的代码,仅仅是个测试,用完自动删除。
- 想运行当前目录下的
node_modules/
内的命令,比如:webpack-cli
。