如何正確使用淘寶npm鏡像

當我在一個農村的小鎮上,用的是移動寬帶,用npm去拉載一些依賴時,常常拋出javascript

info There appears to be trouble with your network connection. Retrying... //你的網絡鏈接彷佛有問題,在重試…
複製代碼

哪怕我開了網絡代理,也會出現,html

image.png

安裝一個依賴很是麻煩,這時纔想到用淘寶鏡像代理vue

臨時使用

npm --registry https://registry.npm.taobao.org install express
複製代碼

永久使用

npm config set registry https://registry.npm.taobao.org
複製代碼

配置CNPM

這樣的話,你用npm走的仍是官方的,cnpm走的代理java

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 經常使用的一些命令,方便查看node

持續更新npm

你能夠經過下面的命令顯示npm當前的版本:react

npm -v
複製代碼

若是有須要,能夠經過下面的命令更新npm:git

npm install -g npm
複製代碼

當 Node 的主版本 released 以後,你也可能須要從新構建 C++ 擴展:vue-router

npm rebuild
複製代碼

若是你須要管理多個版本的node.js和npm,能夠考慮使用 n 或者 nvm,www.sitepoint.com/quick-tip-m…,我推薦你們使用nvm去管理node.js版本shell

卸載

如需刪除 node_modules 目錄下面的包(package),請執行:express

npm uninstall :

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的使用,以及參數相關配置

javascript.ruanyifeng.com/nodejs/npm.…

相關文章
相關標籤/搜索