@subject: 測試本地node包
@author: leinov
@date: 2018-10-25
當咱們編寫一個node包,在發佈到npm上以前,須要在本地測試該包。假設咱們有一個已經編寫好的本地node包xcxutil
包和一個測試該包的項目myapp
在同一個文件夾下project
下,有如下兩種方式能夠在myapp
項目中測試本地的xcxutil
包node
|-- project |-- myapp |-- xcxutil
進入項目目錄,按照相對路徑找到xcxutil包,直接安裝。git
cd myapp npm install ../xcxutil
而後進入myapp
中的node_modules
文件夾檢查是否安裝成功,通常狀況下只要路徑正確,node包編寫正確,都會安裝成功,這樣就能夠在myapp中使用xcxutil
。github
const xcxutil = require('xcxutil');
注意,myapp
目錄下必需要有package.json
文件,不然沒法安裝任何node包。npm
上面的狀況是node包和測試項目在同一個文件夾下,因此很方便的就找到路徑,但不少狀況是咱們本地項目衆多,分佈在不一樣的文件夾下,因此找路徑就很麻煩了,因此咱們推薦使用npm link
這種將node包鏈接到全局的方式。json
cd xcxutil npm link
執行上面命令獲得如下輸出app
/Users/leinov/.nvm/versions/node/v8.11.3/lib/node_modules/xcxutil -> /Users/leinov/project/xcxutil
意思是將project
下的xcxutil
鏈接到全局的node_modules
下,咱們進入全局node_modules
包下也能夠查看到xcxutil
包測試
而後在myapp中也link一下該包便可測試使用ui
cd myapp npm link xcxutil
這樣xcxutil就被安裝到myapp下啦,在xcxutil下的修改也會同步到myapp下,就能夠實現本地測試了,code
取消在全局的鏈接v8
cd xcxutil npm unlink
xcxutil已經發布,歡迎你們使用github地址。