閱讀該文只需要五分鐘
和多數(shù)人一樣傻粘,我們開(kāi)發(fā)者也喜歡給我們的同事和朋友秀一些小技巧巡语,本文將會(huì)介紹一些和 Node Package Manager (NPM) 有關(guān)的鍵盤(pán)技巧。當(dāng)然筹煮,技巧不僅僅用來(lái)秀或者“裝逼”资昧, 而是真的可以讓我們的工作更加的有效和精準(zhǔn),讓我們開(kāi)始學(xué)習(xí)這些技巧吧幔烛!
#1 Package 初始化 (Package initialization)
你想要快速初始化一個(gè)新的 package
嗎啃擦? 你是否厭倦了初始化package
出現(xiàn)的無(wú)窮無(wú)盡的問(wèn)題?那么你可以嘗試npm init -y
或者npm init -f
. 這兩個(gè)命令可以讓你跳過(guò)很多“無(wú)關(guān)緊要”的問(wèn)題讓你直接開(kāi)始編寫(xiě)你的優(yōu)雅代碼说贝!
-
我們先看看默認(rèn)的
npm init
有多么冗長(zhǎng)
image.png -
再試試
npm init -y
或者npm init -f
image.png
如我們所愿议惰,自動(dòng)生成了package.json
的基本信息,如果需要擴(kuò)充或者修改
我們可以 vi package.json
乡恕。
#2 打開(kāi) package 的 Homepage
你有發(fā)現(xiàn)并使用一些很酷炫的package
嗎言询? 你是否想迅速的訪問(wèn)該 package
的主頁(yè)查看文檔呢?使用 npm home 'your-package'
命令將幫你直接打開(kāi) package
的主頁(yè)傲宜,而不需要google package的主頁(yè)运杭,更不用那不專業(yè)的百度。
#3 打開(kāi) package 的 Github 倉(cāng)庫(kù)
類(lèi)似于上一條命令函卒,運(yùn)行 npm repo "your-package"
可以幫你直接打開(kāi)該 package 的官方 GitHub 倉(cāng)庫(kù)辆憔。 其實(shí)你也可以在Chrome輸入 www.github.com 按下 tab
直接搜索關(guān)鍵字,而不用等待 Github頁(yè)面渲染报嵌。
#4 列舉已經(jīng)安裝的package
為什么我們需要花費(fèi)我們的時(shí)間打開(kāi) package.json
文件去檢查我們安裝了哪些
package 依賴虱咧? 只需要簡(jiǎn)單的運(yùn)行 npm ls --depth 0
就可以得到我們需要了解的信息。
我們嘗試在前面生成的 package.json
中加一個(gè) package
依賴并安裝锚国。
使用 npm ls --depth 0
很清晰的查看到我們已經(jīng)安裝的依賴
#5 查看所有的可執(zhí)行腳本
想知道project有哪些可執(zhí)行的腳本腕巡,閱讀package.json
當(dāng)然可以,不過(guò)太原始和耗時(shí)血筑,試試npm run
再給大家看看一個(gè)實(shí)際project的可執(zhí)行腳本
#6 檢查未定義在 package.json 中的 package
另一個(gè)常用的命令, 使用 npm prune
會(huì)比較你的 package.json
文件中定義的 package
和 /node_modules
內(nèi)容绘沉, 你將會(huì)得到一個(gè)列表顯示哪些 package
未被定義在 package.json
中煎楣,并且, npm prune
將會(huì)刪除這些你未在 package.json
中定義或者你在npm install
時(shí)未使用--save
標(biāo)記的 package
车伞。
聽(tīng)起來(lái)有點(diǎn)繞择懂,總結(jié)就是可以幫你整理/node_modules
中無(wú)關(guān)的 package, 減少你的依賴文件容量。
#7 修改(Bump) package的版本
一般我們的版本定義都為 major.minor.patch
, 分別稱為主版本或者大版本另玖,次版本或者小版本困曙,以及補(bǔ)丁。
我們項(xiàng)目或者package發(fā)布大的里程碑日矫,會(huì)修改大版本號(hào)赂弓,大版本號(hào)可以不向前兼容,發(fā)布向前兼容的功能時(shí)可修改小版本哪轿,Bug修復(fù)功能不做改變時(shí)只需要修改補(bǔ)丁號(hào)即可。
舉例說(shuō)明:
package 1.0.0 提供了 list()
方法用于列出所有的集合數(shù)據(jù)翔怎。
package 1.0.1 修復(fù)了list()
方法沒(méi)有判斷集合為None
的Bug窃诉。
package 1.1.0 修復(fù)了list()
在IE瀏覽器無(wú)法執(zhí)行的問(wèn)題,并兼容1.0.1版本赤套。
package 2.0.0 添加了add(), rm()
方法飘痛,同時(shí)list()
改名為toList
, 無(wú)法向前兼容容握。
常規(guī)的做法宣脉,我們只需要手工修改package.json
的version
字段就大功告成,但是 npm version
為我們提供了酷炫的修改方式剔氏,如圖所示塑猖,經(jīng)過(guò)了三種方式的版本修訂,package.json
的 version 字段最終為 2.0
#8 運(yùn)行 test
我們?cè)谌粘9ぷ髦刑铬耍恳惶於伎赡軙?huì)使用 npm run test
運(yùn)行多次test羊苟, 何不試試 npm t
讓手指減負(fù)
如果你覺(jué)得意猶未盡,還想多了解一些 npm
技巧感憾,以下有一些筆者日常常用的命令蜡励。
安裝 package
全局安裝 package
安裝依賴并保存在 dev dependency中
安裝依賴并保存在 dependency中
結(jié)束語(yǔ)
假如這些命令能讓你在你的同事或者朋友面前秀一把固然好,但本文的目的只是告訴大家npm
有一些技巧可以幫助我們提高工作效率和樂(lè)趣, 如果有興趣還有很多的技巧等待大家的挖掘和發(fā)現(xiàn)阻桅。
原文地址:https://dev.to/borrellidev/impress-your-colleagues-with-these-npm-tricks-3fcb
感謝原文作者 Piero Borrelli