原文連接node
平常使用npm時候的一些小技巧,值得學習git
🚫:即便採用cli安裝,你安裝依賴的版本可能不一樣於別的同窗github
✅:由於在package.json中版本號通常是經過^符號,使用--save-exact
,會安裝package.json中指定版本npm
$ npm install --save-exact aDependency
# Shorter:
$ npm i -E aDependency
複製代碼
更好的方法是配置下$ npm config set save-exact true
json
🚫:使用npm 安裝時會試圖解析依賴,由於在依賴中聲明的範圍不是你本身編寫的,因此可能會致使在本地安裝不一樣版本。而後即便不曾操做,也會自動更新package-lock.json
文件。安全
✅:使用npm ci
,其優點:bash
🚫:污染全局包下的node_modules
文件工具
✅:npx
會自動查找當前依賴包中的可執行文件,若是找不到,就會去 PATH 裏找。若是依然找不到,就會幫你安裝gitlab
🚫:發現某些包具備安全漏洞(好比以前很出名的npm包被注入挖礦代碼的事件)學習
✅:npm audit
和npm audit fix
,自從npm6以後採用npm install時候會自動執行npm audit命令,若是出現問題會自動中止。 另外一種解決方式使用github和gitlab內置的服務
🚫:更新某個包後,會出問題
✅:有如下兩種不一樣解決方法:
updtr
npm包,會更新某個庫,而後跑測試,若是測試成功後,會更新版本,不然就回滾到以前版本npm-check
包會展現過時的包 npx npm-check -u
cloud.githubusercontent.com/assets/5150…
🚫:當配置js和ts,node的path是依賴於版本的
✅:若是使用nvm管理node版本,nvm會管理一個連接到當前版本。配置以下後,當切換node版本後,會從新建立連接
# Put this in your .bashrc/.zshrc
$ export NVM_SYMLINK_CURRENT=true
複製代碼
🚫:沒法實時更新github上包的新版本
✅:GitPunch會定製你想追蹤的npm包庫,還能夠定時發郵件通知