npm常用命令总结
作为菜鸟,整理些常用的命令以便copy来即用。
1. 参考资料
npm中文网
阮一峰教程-npm
阮一峰教程-package.json
2. 安装node.js
2.1 node.js下载地址
node.js中文网下载地址
新的node.js安装后包含了npm,推荐下载长期支持的稳定版。
2.2 查看安装后的npm版本
#查看node版本
node -v
#查看npm版本
npm -v
2.3 设置淘宝npm镜像
从淘宝镜像下载速度更快,以后用cnpm代替npm。
参考淘宝npm镜像
npm install -g cnpm --registry=https://registry.npm.taobao.org
3. 了解package.json文件
package.json文件是什么?
我大概的理解就是管理项目依赖的包的。
详细知识参考阮一峰教程-package.json
3.1 生成package.json
新建项目的空文件夹,例如pigg,然后输入一下命令
npm init
会有些提问,最后输入yes,生成package.json文件
{
"name": "pigg",
"version": "1.0.0",
"description": "pigg quant",
"main": "index.js",
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1"
},
"keywords": [
"pigg"
],
"author": "dong.wang",
"license": "ISC"
}
3.1.1 设置环境变量
可以设置些默认的环境变量,这样执行npm init -yes或者npm init -y直接生成package.json文件,默认设置好信息,不用再手工输入。
npm set init-author-name 'Your name'
npm set init-author-email 'Your email'
npm set init-author-url 'http://yourdomain.com'
npm set init-license 'MIT'
npm init -yes
npm init -y
3.2 dependencies和devDependencies
在看别人的项目的package.json都有dependencies和devDependencies这两个属性。
dependencies | devDependencies |
---|---|
项目在生产环境中依赖的包 | 项目在开发和测试环境中依赖的包 |
3.2 scripts
scripts指定了运行脚本命令的npm命令行缩写。
例如对于下面scripts
npm run dev 等于执行 node build/dev-server.js
npm run build 等于执行 node build/build.js
npm run dev
npm run build
"scripts": {
"dev": "node build/dev-server.js",
"build": "node build/build.js",
"test": "cross-env BABEL_ENV=test karma start test/unit/karma.conf.js --single-run"
}
4.npm管理包
4.1 安装包 install
#格式:
npm install <packname>
#举例:安装mock
npm install mock
#install 可简写为 i
npm i mock
这个时候可在项目文件夹下发现多了个node_modules文件夹,里面有刚下好的mock包
打开package.json文件,发现里面内容没有变化
4.2 安装包,并更新package.json文件 install -S / -D
#安装【生产】环境中依赖的包,并添加到package.json的dependencies
npm i <packname> --save
#简写
npm i <packname> -S
#安装【开发测试】环境中依赖的包,并添加到package.json的devDependencies
npm i <packname> --save-dev
#简写
npm i <packname> -D
#举例:安装生成环境的axios包
npm i axios -S
#举例:安装开发环境的babel-core包
npm i babel-core -D
package.json文件会添加如下内容
"dependencies": {
"axios": "^0.18.0"
},
"devDependencies": {
"babel-core": "^6.26.3"
}
4.3 全局安装 install -g
每个模块可以“全局安装”,也可以“本地安装”。“全局安装”指的是将一个模块安装到系统目录中,各个项目都可以调用。一般来说,全局安装只适用于工具模块,比如eslint和gulp。“本地安装”指的是将一个模块下载到当前项目的node_modules子目录,然后只有在项目目录之中,才能调用这个模块。
#举例:全局安装webpack
npm install webpack -global
#简写
npm i webpack -g
如下图在C盘的系统用户文件夹下下载了webpack包。
4.4 更新、删除包 up / rm
#更新本地包
npm update <packname>
#简写
npm up <packname>
#更新全局包
npm up <packname> -g
#删除本地包
npm uninstall <packname>
#简写
npm remove <packname>
npm rm <packname>
#删除全局包
npm rm <packname> -g
以上就是简单的总结,以后会补充yarn的使用,感觉yarn更快些。