什麼是npm前端
npm的全稱Node Package Manager,npm原先只是做爲nodejs的包管理工具,然而隨着前端社區的發展,現在npm不只是nodejs的包管理工具,仍是前端js的包管理工具。node
更新npmexpress
安裝過nodejs都知道,nodejs的安裝會順便安裝上npm,因此這裏不講如何安裝npm。經過命令npm update -g npm
能夠進行npm的更新npm
牆的問題json
由於牆的緣由,在國內使用npm會比較慢,這時候可使用淘寶的npm鏡像瀏覽器
(方法一) 每次使用npm的時候指定鏡像,npm install -g npm --registry=https://registry.npm.taobao.org
工具
(方法二) 安裝cnpm,npm install -g cnpm --registry=https://registry.npm.taobao.org
,以後就可使用cnpm替代npm來進行包的安裝,更新和卸載測試
(方法三) 設置全局鏡像源npm config set registry https://registry.npm.taobao.org
code
經常使用命令blog
npm init
初始化bower生成package.json
npm install package-name
安裝,如npm install express
,能夠帶上--save
參數,這樣package.json中會寫入該包的信息
npm uninstall package-name
卸載
npm update
更新
npm list
查看已安裝的包列表
使用
npm shrinkwrap
來管理包的依賴
在項目開發中咱們每每須要安裝和升級相應的包,然而咱們在開發的過程當中使用的包版本和開發完成後進行部署的時候(npm install),包的版本可能會存在差別,這種差別可能就會致使項目運行報錯。爲了不這種錯誤的發生,咱們可使用npm shrinkwrap
來解決這個問題。
在開發過程當中,引入一個新包的流程以下
npm install --save package-name@package-version
npm shrinkwrap
在開發過程當中,更新一個包的流程以下
npm outdated
獲取項目全部依賴的更新信息npm install --save package-name@package-version
npm shrinkwrap
在開發過程當中,刪除一個包的流程以下
npm uninstall --save package-name
npm shrinkwrap
建立私有的npm鏡像
npm install -g sinopia
sinopia
接着在瀏覽器地址欄中輸入http://localhost:4873/
npm adduser --registry http://localhost:4873
npm publish
~/.config/sinopia/config.yaml
配置文件中刪除proxy: npmjs
這行配置項,這樣才能將包提交到本地私有源npm config set registry http://localhost:4873