npm
NPM是随同NodeJS一起安装的包管理工具,能解决NodeJS代码部署上的问题,常见的使用场景有以下:
- 允许用户从NPM服务器下载别人编写的第三方包到本地使用。
- 允许用户从NPM服务器下载并安装别人编写的命令行程序到本地使用。
- 允许用户将自己编写的包或命令行程序上传到NPM服务器供别人使用。
npm常用的命令cli
1. npm install <name> /npm install <name> :下载后的包放在当前路径下面
2. npm install <name> -g //-g 将包安装到全局环境中
3. npm install <name> --save // --save是指下载的包的信息写入package.json中
4. npm uninstall <name> --save// 删除下载的包并且删除package.json中的dependencies配置
5. npm update <name> // 更新本地包
6. npm outdated // 查询包是否过时
7. npm rebuild <name>//更改模块内容再重建
8. npm view <name>//查看node模块的package.json文件夹 查看package.json文件夹中某个标签,$npm view mouleNames lableName
9. npm update <name> // 更新包
10. npm list //查看安装的模块,搜索是从代码执行的当前目录开始的,搜索结果取决于当前使用的目录中的node_modules下的内容
11. npm init:会引导创建一个package.json文件,包括名称、版本、作者这些信息等
12. npm root:查看当前包的安装路径 npm root -g:查看全局的包的安装路径
13. npm -v:查看npm安装的版本
14. npm info <name> // 查看所有可以下载包的版本
15. npm publish // 发布包
16. npm bin [] // 列出 npm 安装可执行文件的文件夹
复制代码
–save-dev 和 –save 的区别
npm install 在安装 npm 包时,有两种命令参数可以把它们的信息写入 package.json 文件,一个是npm install–save(-S),另一个是 npm install –save-dev(-D)。
–save 会把依赖包名称添加到 package.json 文件 dependencies 键下,dependencies是运行时依赖。
–save-dev 则添加到 package.json 文件 devDependencies 键下,devDependencies是开发时依赖。
{
"dependencies": {
"vue": "^2.2.1"
},
"devDependencies": {
"babel-core": "^6.0.0",
"babel-loader": "^6.0.0",
}
}
复制代码
cnpm(淘宝镜像)
- 将npm上的包同步更新到淘宝镜像上,目前是每10分钟同步一次。
- 配置:npm install -g cnpm –registry=registry.npm.taobao.org
- 常用命令:使用 cnpm 代替 npm 即可
- 问题:会多下载一些文件/文件夹严重者会导致 webstorm 瘫痪,就像帕金森综合征
- 解决上述问题的办法(修改 npm 的下载指向地址):npm config set registry “registry.npm.taobao.org”
yarn
-
Yarn 同样是一个从 npm 注册源获取模块的新的 CLI 客户端。
-
Yarn 是 Facebook, Google, Exponent 和 Tilde 开发的一款新的 JavaScript 包管理工具。它的目的是解决这些团队使用 npm 面临的少数问题,即:
安装的时候无法保证速度/一致性;npm 安装时允许运行代码的安全问题。
yarn的命令cli
yarn init :初始化新项目
yarn install/ yarn :安装所有的依赖包 ( 依照 package.json 文件列出的依赖安装)
yarn add [package]@version :添加依赖包//不带-D默认生产环境
//Yarn 的-dev 则等同于 npm 的 --save-dev
yarn remove [package]: 删除依赖包
yarn publish: 发布包
yarn bin: 列出 yarn 安装可执行文件的文件夹
yarn ls: 安装包列表
yarn upgrade: 这条命令将根据 package.json 将 package 升级到最新版本,并更新 yarn.lock
yarn licenses ls:列出已安装包的许可证
yarn run [script] [-- <args>]: 运行已定义的包脚本
yarn why <query>:解释为什么安装了某个包
yarn info <package> [<field>]:显示关于包的信息
yarn clean: 清除并删除包依赖项中不必要的文件
yarn check: 校验当前项目的 package.json 文件里的依赖版本和 yarn 的 lock 文件中列出的版本是否匹配
yarn licenses: 罗列出所有被安装的 package 所持有的执照情况
复制代码
cyarn
- 使用淘宝镜像,更快
- 配置:npm install cyarn -g –registry “registry.npm.taobao.org”
- 常用命令:将 yarn 使用cyarn代替即可
yarn相比npm的优势
- 安装更快,并行安装,Yarn 缓存了每个下载过的包
- 有yarn.lock
- 清晰输出
- 更语义化命令
- 更安全,通过算法校验每个安装包的完整性
- 更可靠,Yarn 能够保证在不同系统上无差异的工作
npm和yarn常用命令对比
功能 | npm | yarn |
---|---|---|
初始化新项目 | npm init | yarn init |
安装所有依赖 | npm install | yarn/yarn install |
添加运行依赖 | npm install @angular-cli –save | yarn add @angular-cli |
移除依赖 | npm uninstall @angular-cli –save | yarn remove @angular-cli |
添加开发依赖 | npm install @angular-cli –save-dev | yarn add @angular-cli –dev |
更新依赖 | npm update –save | yarn upgrade |
添加全局依赖 | npm install -g @angular-cli –save | yarn global @angular-cli |
© 版权声明
文章版权归作者所有,未经允许请勿转载。
THE END