新手問與答
Q1:為什麼照著書上的指令輸入,程式卻無法執行?
如果是 MacOS 使用者,可試著先檢查權限,是否需要加上
sudo
才可執行;如果是 Windows 使用者,有些指令在 Windows 系統上是無法執行的,e.g.,touch
。
也可檢查程式碼是否有錯字,例如載入套件時所設定的變數名稱與 task 裡呼叫名稱是否一致,task 最後一行是否加上分號 ( ; ),或是看看 command-line 輸出的錯誤訊息,試著去找出原因。
Q2:可以一次安裝多個套件嗎?
可以,將所有要安裝的套件名稱接在
npm install
後,npm install package-name1 package-name2 package-name3 --save-dev
。
Q3:當有新專案時,套件需要重新安裝嗎?
可直接複製前個專案的 package.json,執行
npm install
,所有的套件便會自動安裝。
Q3:如何移除套件?
移除全域套件( 記得切換回根目錄):
npm uninstall package-name --global
移除專案套件:npm uninstall package-name
Q4:如何知道這個專案用了哪些套件?
如果在安裝時有加入
--save
或--save-dev
指令,套件便會自動新增在 package.json 裡,因此所有的套件與版本皆可在此查找。
Q5:安裝套件時 --save 與 --save-dev 有何差別?
--save
:添加至 package.json 裡 dependencies 部分,網頁執行時需要的套件,e.g., JQuery, React--save-dev
:添加至 package.json 裡 devDependencies,開發時需要的套件,e.g., gulp, gulp-htmlmin, gulp-sass
Q6:-g 和 --global 有一樣嗎?指令前後順序有差嗎?
-g
是--global
的縮寫,類似的縮寫還有-v
和--version
,兩者是一樣的。npm install
後的順序對換也沒關係,npm install gulp --global
和npm install --global gulp
都是可行的。