一.认识NPM
npm(全称Node Package Manager,即node包管理器)是Node.js默认的、以JavaScript编写的软件包管理系统npm来分享和使用代码已经成了前端的标配
官网:npm官网https://www.npmjs.comnpm
被全球超过1100万开发人员所依赖
拥有超过一百万个软件包,是世界上最大的软件注册表
二.安装NPM工具
npm是Node.js默认的软件包管理系统安装完毕node后,会默认安装好npmnpn本身也是基于Node.js开发的软件
下载Node: http://nodejs.cn
三.NPM镜像的设置与查看
搭建环境时通过如下代码将npm设置成淘宝镜像
npm config set registry https://registry.npm.taobao.org --global
npm config set disturl https://npm.taobao.org/dist --global
设置当前地址(设置为默认地址)
npm config set registry https://registry.npmjs.org/
查看镜像的配置结果
npm config get registrynpm config get disturl
使用nrm工具切换淘宝源
npx nrm use taobao
如果之后需要切换回官方源可使用
npx nrm use npm
四.NPM的使用
五.Package.json 属性说明
六.NPM常用命令
除了本部分外,NPM还提供了很多功能,package.json里也有很多其它有用的字段。
除了可以在npmjs.org/doc/查看官方文档外,这里再介绍一些NPM常用命令。
NPM提供了很多命令,例如install和publish,使用npm help可查看所有命令。
-
NPM提供了很多命令,例如
install
和publish
,使用npm help
可查看所有命令。 -
使用
npm help <command>
可查看某条命令的详细帮助,例如npm help install
。 -
在
package.json
所在目录下使用npm install . -g
可先在本地安装当前命令行程序,可用于发布前的本地测试。 -
使用
npm update <package>
可以把当前目录下node_modules
子目录里边的对应模块更新至最新版本。 -
使用
npm update <package> -g
可以把全局安装的对应命令行程序更新至最新版。 -
使用
npm cache clear
可以清空NPM本地缓存,用于对付使用相同版本号发布新版本代码的人。 -
使用
npm unpublish <package>@<version>
可以撤销发布自己发布过的某个版本代码。
七.包的使用
1.通过命令行使用npm下载和更新包
2.没有webpack之前搜寻整个node_modules目录来定位每个包的路径再手动添加到我们HTML文件中(实在太太不方便了)
3.大多数编程语言都会提供从一个文件导入另一个文件代码的机制。然而JavaScript最初设计时并没有这个特性,因为JavaScript原本是为了在浏览器端运行而设计的,并没有权限获取计算机客户端的文件系统(安全考虑)。所以很长一段时间以来,组织多个文件的JavaScript代码就是把每个文件下载下来,变量是全局共享的。
4.CommonJS中很大的一部分便是对模块系统的规范,
5.使用require语句导入包
6.新的ES6可以使用import导入包
八.yarn是什么
“Yarn是由Facebook、Google、Exponent和 Tilde联合推出了一个新的JS包管理工具,正如官方文档中写的,Yarn是为了弥补npm的一些缺陷而出现的。因为NPM5以下会出现下面的问题:
npm install的时候巨慢。特别是新的项目拉下来要等半天,删除node_modules,重新install的时候依旧如此。
同一个项目,多人开发时,由于安装的版本不一致出现bug
yarn官网http://www.yarnpkg.com
九.yarn的安装
下载node.js,使用npm安装
npm install -g yarn
查看版本:
yarn --version
安装node.js,下载yarn的安装程序:
提供一个.msi文件,在运行时将引导您在Windows上安装Yarn
Yarn淘宝源安装,分别复制粘贴以下代码行到黑窗口运行即可
yarn config set registry https://registry.npm.taobao.org -g
yarn config set sass_binary_site http://cdn.npm.taobao.org/dist/node-sass -g
十.yarn的基本使用
十一.yarn的优点
速度快 安装版本统一 更简洁的输出 多注册来源处理 更好的语义化 | npm | yarn |
npm install | yarn | |
npm install react --save | yarn add react | |
npm uninstall react --save | yarn remove react | |
npm install react --save-dev | yarn add react --dev | |
npm update --save | yarn upgrade |
十二.从npm迁移到yarn
可以从npm迁移到yarn,也可以从yarn迁移到npm。
有了yarn的压力之后,npm做了一些类似的改进,在npm5.0之前,yarn的优势特别明显。但是在npm之后,通过以上一系列对比,我们可以看到npm5在速度和使用上确实有了很大提升,值得尝试。
如果你已经在个人项目上使用yarn,并且没有遇到更多问题,目前完全可以继续使用。但如果有兼容npm的场景,以及还没有切到yarn的项目,那现在就可以试一试npm5了。