@subject: 测试本地node包
@author: leinov
@date: 2018-10-25
当我们编写一个node包,在发布到npm上之前,需要在本地测试该包。假设我们有一个已经编写好的本地node包xcxutil
包和一个测试该包的项目myapp
在同一个文件夹下project
下,有以下两种方式可以在myapp
项目中测试本地的xcxutil
包
|-- project
|-- myapp
|-- xcxutil
相对路径安装xcxutil测试
进入项目目录,按照相对路径找到xcxutil包,直接安装。
cd myapp
npm install ../xcxutil
然后进入myapp
中的node_modules
文件夹检查是否安装成功,一般情况下只要路径正确,node包编写正确,都会安装成功,这样就可以在myapp中使用xcxutil
。
const xcxutil = require('xcxutil');
注意,myapp
目录下必须要有package.json
文件,否则无法安装任何node包。
使用 npm link 连接到全局测试
上面的情况是node包和测试项目在同一个文件夹下,所以很方便的就找到路径,但很多情况是我们本地项目众多,分布在不同的文件夹下,所以找路径就很麻烦了,所以我们推荐使用npm link
这种将node包连接到全局的方式。
cd xcxutil
npm link
执行上面命令得到以下输出
/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一下该包即可测试使用
cd myapp
npm link xcxutil
这样xcxutil就被安装到myapp下啦,在xcxutil下的修改也会同步到myapp下,就可以实现本地测试了,
取消在全局的连接
cd xcxutil
npm unlink
xcxutil已经发布,欢迎大家使用github地址。