如何正确使用淘宝npm镜像

简介: 如何正确使用淘宝npm镜像

当我在一个农村的小镇上,用的是移动宽带,用npm去拉载一些依赖时,经常抛出


info There appears to be trouble with your network connection. Retrying... //你的网络连接似乎有问题,在重试…


哪怕我开了网络代理,也会出现,


image.png


安装一个依赖非常麻烦,这时才想到用淘宝镜像代理


临时使用



npm --registry https://registry.npm.taobao.org install express


永久使用



npm config set registry https://registry.npm.taobao.org


配置CNPM



这样的话,你用npm走的还是官方的,cnpm走的代理


npm install -g cnpm --registry=https://registry.npm.taobao.org


恢复使用



npm config set registry https://registry.npmjs.org


验证是否设置成功



npm info express
or
npm config get registry


image.png

NPM相关命令



整理 npm 常用的一些命令,方便查看

持续更新npm


你可以通过下面的命令显示npm当前的版本:


npm -v


如果有需要,可以通过下面的命令更新npm:


npm install -g npm


当 Node 的主版本 released 之后,你也可能需要重新构建 C++ 扩展:


npm rebuild


如果你需要管理多个版本的node.js和npm,可以考虑使用 n 或者 nvm,

https://www.sitepoint.com/quick-tip-multiple-versions-node-nvm/,我推荐大家使用nvm去管理node.js版本


卸载


如需删除 node_modules 目录下面的包(package),请执行:


npm uninstall <package>:
npm uninstall lodash


如需从 package.json 文件中删除依赖,需要在命令后添加参数 --save:


npm uninstall --save lodash


注意:如果你将安装的包作为 "devDependency"(也就是通过 --save-dev 参数保存的),那么 --save 无法将其从 package.json 文件中删除。所以必须通过 --save-dev 参数可以将其卸载。


更新包


npm update package    #更新局部模块


npm update -g package    #更新全局模块


npm update -g package@version   #更新全局模块 package-name 到 x.x.x 版本


指定版本


npm view react versions    查看包在npm所有版本


npm i vue@2.0.0 --save    安装指定版本


使用开发中的模块


当你正在开发一个模块时,会经常想在其它项目中尝试使用或者在任何一个目录运行它(如果你的应用支持),这时没必要将其发布到 npm,并全局安装---仅需在该模块所在目录使用下面的命令:


npn list


该命令会为模块在全局目录下创建一个符号链接。可以通过下面的命令查看模块引用:

npm list -g --depth=0


或者:


npm outdated -g


现在,就可以从命令行运行模块或者通过 require 在任何项目中引入该模块。

另一个选择是,可以通过文件路径在 package.json 文件中声明对该模块的依赖:


"dependencies": {
  "myproject": "file:../myproject/"
}


常见通用命令


npm root    #查看本地安装的目录
npm root -g    #查看全局安装的目录
npm info package    #查看包信息
npm ls    #查看本地安装包
npm ls -g    #查看全局安装包,包含依赖
npm ls -g --depth 0    #查看全局安装包,不包含依赖
npm outdated    #列出所有不是最新版的包,可以带参数
npm cache clean    #清除本地缓存
npm config ls -l    #查看npm配置
npm view package versions    #查看包的所有版本
npm publish     #发布包
npm access    #设置发布包的访问级别
npm search modulNmae   #搜索包是否存在


package.json参数介绍



说完了npm,自然也得说下package.json文件的作用,以及说明


key字段介绍


name - 包名
version - 包的版本号
description - 包的描述
homepage - 包的官网 url 
author - 包的作者姓名
contributors - 包的其他贡献者姓名
dependencies - 依赖包列表。如果依赖包没有安装,npm 会自动将依赖包安装在 node_module 目录下
repository - 包代码存放的地方的类型,可以是 git 或 svn,git 可在 Github 上
main - main 字段是一个模块ID,它是一个指向你程序的主要项目。就是说,如果你包的名字叫 express,然后用户安装它,然后require("express")
keywords - 关键字


npm i 选项–global,–save,–save-dev


-global: 简写 -g


   npm i express -g 为全局安装,这种就可以直接使用express命令, 否则会提示express不是内部或外部命令


-save: 简写 -S, 作用是在package.json的dependencies字段增加或修改安装包和版本号


-save-dev: 简写 -D, 是修改devDependencies, 这样就不用安装了某个包之后手动修改package.json


~ 与 ^ 版本


版本分为: 主版本号、次版本号、补丁版本号


"devDependencies": {
    "vue": "~2.2.2",            // 匹配最近小版本,如,会匹配所有的2.2.x版本,但最高不会匹配2.3.0
    "vue-router": "^2.2.0"        // 最近的一个大版本,所有 2.x.x但不不包括3.0.0,相当于 2.0.0 <= version < 3.0.0
}


script属性


script属性定义的对应了一段shell脚本


npm start 启动模块


   该命令写在package.json文件scripts的start字段中,可以自定义命令来配置一个服务器环境和安装一系列的必要程序


"scripts": {
        "start": "gulp -ws"
    }

 

npm stop 停止模块


npm restart 重新启动模块


你可能在开发中用到是用npm run xxx,之类的,start ,stop,restart 是几个通用命令,阔以不用加run


npm start === npm run start


推荐


npm模块管理器


image.png


详细介绍了npm的使用,以及参数相关配置

相关文章
|
7月前
|
资源调度 JavaScript
nodeJS 的 npm 设置国内高速镜像之淘宝镜像的方法
nodeJS 的 npm 设置国内高速镜像之淘宝镜像的方法
5969 2
|
7月前
|
资源调度
#发布npm包遇到错误,因为用了淘宝镜像地址的原因的解决方法-403 403 Forbidden - PUT https://registry.npmmirror.com/-/user/org.cou
#发布npm包遇到错误,因为用了淘宝镜像地址的原因的解决方法-403 403 Forbidden - PUT https://registry.npmmirror.com/-/user/org.cou
426 0
|
7月前
npm 切换镜像后,npm i 安装依然卡,需要好久才完成
npm 切换镜像后,npm i 安装依然卡,需要好久才完成
800 0
|
JavaScript
Node.js npm设置淘宝npm镜像
Node.js npm设置淘宝npm镜像
1599 0
|
6月前
|
Dart JavaScript 前端开发
npm install node-sass 安装失败的解决方案:利用国内镜像加速安装
npm install node-sass 安装失败的解决方案:利用国内镜像加速安装
3098 1
|
6月前
Node历史版本下载及配置npm镜像
Node历史版本下载及配置npm镜像
558 1
|
5月前
[已解决]npm淘宝镜像最新官方指引(2023.08.31)
[已解决]npm淘宝镜像最新官方指引(2023.08.31)
3167 0
|
JavaScript
npm的安装与镜像设置
npm的安装与镜像设置
681 11
|
7月前
【node】 cnpm|npm查看、修改镜像地址操作 换源操作
【node】 cnpm|npm查看、修改镜像地址操作 换源操作
3140 1
|
存储 缓存 资源调度
关于npm镜像迁移导致的服务异常
关于npm镜像迁移导致的服务异常
336 0