NPM:
干嘛的:帮助你安装模块(包),自动安装依赖,管理包(增,删,更新,项目所有包)
类似: bower yarn (https://yarn.bootcss.com/)
全局:任何目录c/d/e
工具命令行,脚手架
可以在命令行状态执行
项目环境: 只能在当前目录使用
依赖项目代码来运行
项目依赖dependencies: 只能在当前项目下使用,上线了,也需要这个依赖 --save
开发依赖devDependencies:只能在当前项目下使用 ,上线了,依赖不需要了 --save-dev
安装、卸载到全局
npm i 包名 -g g == golbal yarn add 包名 | bower install 包名
npm uninstall 包名 -g yarn remove 包名 | bower uninstall 包名
安装到项目环境
npm install 包名 --save | -S
npm install 包名 --save-dev | -D
查看已安装: npm list 列出所有已装包
npm outdated 版本对比(安装过得包)
npm info 包名 查看当前包概要信息
npm view 包名 versions 查看包历史版本列表
管理模块(项目):
package.json的name的名字需要和项目目录名一致,不要和依赖的包重名
npm init 初始化npm管理文件(package.json)
{
"name": "npm", 项目名称
"version": "0.0.1", 版本
"description": "test and play", 描述
"main": "index.js", 入口文件
"dependencies": { 项目依赖 上线也要用
"jquery": "^3.2.1"
},
"devDependencies": { 开发依赖 上线就不用
"animate.css": "^3.5.2"
},
"scripts": { 命令行
"test": "命令行",
},
"repository": { 仓库信息
"type": "git",
"url": "git+https://github.com/alexwa9.github.io/2017-8-28.git"
},
"keywords": [ //关键词
"test",'xx','oo'
],
"author": "wan9",
"license": "ISC", 认证
"bugs": {
"url": "https://github.com/alexwa9.github.io/2017-8-28/issues"
},
"homepage": "https://github.com/alexwa9.github.io/2017-8-28#readme"
}
安装到项目依赖 以后上线任然需要的包 √
npm install 包名 --save / -S
安装到开发依赖 上线后不需要的包
npm install 包名 --save-dev / -D
安装package.json里面指定的所有包:
npm install
版本约束:
^x.x.x 约束主版本,后续找最新
~x.x.x 保持前两位不变,后续找最新
* 装最新
x.x.x 定死了一个版本
选择源
npm install nrm -g 安装选择源的工具包
nrm ls 查看所有源
nrm test 测试所有源
nrm use 源名
模块下载 (卡顿) 超过5分钟 | 报错
ctrl + c -> npm uninstall 包名 -> npm cache 清除缓存 -> 换4g网络 npm install 包名
发布模块:
注册账号 npmjs.com
登录:
npm login 登录到npmjs.com
输入 user/password/email
创建包目录->npm init -y -> 创建入口index.js -> 编写,输出-> npm publish发布
发布:npm publish
删除:npm unpublish
发布操作长时间没有做,邮箱需要确认,收取激活邮件
jq包,lodash包
项目依赖的包安装到项目环境