×

NPM安装及使用

96
甘言川
2016.06.14 11:08* 字数 678

文章内容列表:

  1. 安装
  2. 常用npm命令
  3. npm 配置文件修改
  4. npm 加速
  5. npm 发布
  6. npm 发布更新版本

1.安装
安装node以后自动会安装NPM。
2.常用的npm命令

#安装包
npm install <pkg> 或者 npm install <pkg>@<version>
#卸载包
npm uninstall <name> 或者  npm uninstall <name>@[<version>]
#发布
npm publish <project>@<version>
#取消发布
unpublish   npm unpublish <project>[@<version>]
#查看当前项目下的包列表
npm ls
#查看全局包列表
npm ls -g
#清理缓存
npm cache clean
#显示包的package.json信息,后面可以跟属性名称。
#e.g.:`npm view <pkg> versions`  其中versions是`package.json`的`versions`属性
npm view <name> [attribute]

3.npm 配置文件修改
命令:npm config <command>
读取配置文件:用户配置文件:npm config ls,全局配置文件:npm config ls -l
用户配置文件目录:~/.npmrc
全局配置文件目录:~/.nvm/versions/node/v6.2.1/etc/npmrc

4.npm 加速
npm加速有两个部分:一个是下载npm的包;另外一个是下载node源码。

  • npm包下载加速
    下载的时候指定下载源
npm --registry=https://registry.npm.taobao.org install koa

全局设置下载源

npm config set registry https://registry.npm.taobao.org 
  • 下载node源码加速
    如果你安装的模块依赖了 C++ 模块需要编译, 肯定会通过 node-gyp 来编译,node-gyp 在第一次编译的时候, 需要依赖 node 源代码, 于是又会去 http://nodejs.org/dist/ 下载。所以将将node源码指定到淘宝的node镜像服务器
    下载的时候指定下载源
npm --registry=https://registry.npm.taobao.org --disturl=https://npm.taobao.org/mirrors/node install koa

全局设置下载源,依次执行。

npm config set registry https://registry.npm.taobao.org 
npm config set disturl https://npm.taobao.org/mirrors/node

npm默认下载地址也是从国外的网站 "https://registry.npmjs.org/" 下载速度比较慢。还有如果你安装的模块依赖了 C++ 模块需要编译, 肯定会通过 node-gyp 来编译,
node-gyp 在第一次编译的时候, 需要依赖 node 源代码, 于是又会去 http://nodejs.org/dist/ 下载,

  • 方式1,在下载的是执行
npm --registry=https://registry.npm.taobao.org install koa
  • 方式2,写入配置文件全局下载都执行淘宝服务器。
npm config set registry https://registry.npm.taobao.org 

5.npm 发布
npm发布先要登陆,用npm adduser 命令,会提示输入用户名,密码和邮箱。

  • npm adduser
  • npm publish

npm adduser code 401 解决方案:之前我在电脑上发布一直提示认证失败,刚刚开始以为是用户名和密码错误,反复重试依旧提示以下错误。

npm WARN adduser Incorrect username or password
npm WARN adduser You can reset your account by visiting:
npm WARN adduser 
npm WARN adduser     https://npmjs.org/forgot
npm WARN adduser 
npm ERR! Darwin 15.4.0
npm ERR! argv "/Users/GXZ/.nvm/versions/node/v6.2.1/bin/node" "/Users/GXZ/.nvm/versions/node/v6.2.1/bin/npm" "adduser"
npm ERR! node v6.2.1
npm ERR! npm  v3.9.3
npm ERR! code E401

最后找到的是因为加速的原因,我们吧registry指向taobao的地址了,因此先把.npmrc配置文件中的注释掉

#registry=https://registry.npm.taobao.org

在此npm login 即可。

6.npm 发布更新版本
npm 发布更新版本需要在原来的版本上做升级。(我本来已经上传了,但是发现没写README,结果发现没办法单独提交一个文件,必须通过版本升级的方式)
版本升级首先要调整package.json中的版本号version,快速升级版本号的方式

#小版本号升级一个版本
npm version patch
#中版号升级一个版本
npm version minor
#大版本号升级一个版本
npm version major

高层版本号的升级,会自动清零子版本号。
发布更新命令还是用

npm publish
react-native
Web note ad 1