一、npm簡介
npm(Node Package Manager)是隨同node.js 一起安裝的包管理工具,為了解決nodejs代碼部署上的很多問題,常用以下場景:
- 允許用戶從npm服務器下載別人編寫的地方包到本地使用。
- 允許用戶將自己編寫的包或明顯杭程序上傳到NPM服務器供別人使用。
二、npm使用前提
必須先安裝node.js,安裝地址官網http://nodejs.cn/,安裝完成以后通過“node -v”查看版本號
三、第一次git了項目
第一次git上獲取項目,記得一定要先npm install
因為剛下載的項目,沒有node_modules,只有通過npm install命令以后會根據package.json 去下載相關依賴包。
四、npm命令大全
1、 npm install 安裝模塊
PS D:\Source2019\TestGit\TestGit> npm install webpack -g
PS D:\Source2019\TestGit\TestGit> npm install webpack
全局安裝是安裝一個工具,他不是安裝在一個文件夾下,而是安裝在某個全局環境下,一般安裝的路徑為,C:\Users\XXX\ 下面(PS:暫時未找到在那個目錄下),全局安裝在命令行中任何地方都可以直接調用。
局部安裝是將項目安裝以后,安裝在./node_modules 下面,然后在項目中,我們可以使用require等方式應用,這樣安裝以后只能在本項目中使用,而webpack這樣的工具在各種情況下使用,建議全局安裝。
為什么已經全局安裝了,還需要本地安裝呢?
1、僅僅是全局安裝夠用嗎?
通常情況下的引入模塊是分為兩種來尋找的,一種就是全局模塊,通過NODE_PATH下去尋找;還有一種就是通過./node_modules去尋找。 如果在項目中,我們希望使用require來表現這種明顯的依賴關系,那么我們就必須使用安裝來進行require,當然也是可以將全局安裝的文件復制過來,但是這是非常麻煩的。 或者是使用..、.、/等這種相對或者絕對的方式來引入,這些無疑都是比較麻煩的,所以本地安裝不夠用。
另外,我們也許在不同的項目中所需要的模塊的版本是不同的,或者可能對某些模塊進行重新命名,這就導致一個項目的重命名影響全局,這是不划算的。
2、本地安裝的重要性。
因為我們需要的包可能有十個,他們之間相互依賴的,如果我們使用全局包,那么每次包的升級、更新等就會影響你的多個項目,那么依賴關系就會被破壞,所以使用本地安裝有利於不同項目之間的獨立性。
綜上所述:除了工具類比如webpack,babel。以外建議使用本地安裝,這樣可以保證各自項目的包是獨立的。
npm install X、npm install X -save、npm install X -save-dev的區別?
1、npm install X:
會把X包安裝到node_modules目錄中,
不會修改package.json,
之后運行npm install 命令時,不會自動安裝X
2、npm install X -save:
會把X包安裝至node_modules目錄中,
會在package.json的dependencies屬性中添加X,
之后運行npm install命令會自動安裝X到node_modules中
運行時需要引用的包
3、npm install X-save-dev
會把X包安裝到node_modules目錄中
會在package.json的devDependencies屬性下添加X
之后運行npm install命令時,會自動安裝X到node_modules目錄中
開發過程需要使用的包
2.npm uninstall 卸載模塊
3.npm update 更新模塊
4.npm outdated 檢查模塊是否已經過時
5.npm ls 查看安裝的模塊
6.npm init 在項目中引導創建一個package.json 文件
通過package.json描述包引用情況,以便后續的其他的項目開發或者他人合作使用。
7.npm help 查看某條命令的詳細幫助
這個相當方便,會自動打開相應命令的幫助文檔。
8.npm root 查看包的安裝路徑
9.npm config 管理npm的配置路徑
10.npm start 啟動模塊
11.npm stop 停止模塊
12.npm restart 重新啟動模塊
13.npm test 測試模塊
14.npm version 查看模塊版本
15.npm view 查看模塊的注冊信息
16.npm adduser 用戶登錄
17.npm publish 發布模塊
18.npm access 在發布的包上設置訪問級別
19.npm package.json的語法
