sqliang/sqliang.github.io

模块调试之npm link速记

Opened this issue · 0 comments

问题

新开发或修改npm模块后,如何在项目中实验?
如:my-project中引入了my-utils模块,my-utils模块修改了,如何在my-project中引入新的来进行调试。

解决方案

常用解决方案主要有:

  1. 发布一个npm beta版本麻烦无趣
  2. 直接使用相对路径安装(npm i path/to/my-utils)每次修改后需要重新install
  3. 使用软链接 可以接受,指令操作有点麻烦
cd path/to/my-project/node_modules
ln -s path/to/my-utils my-utils
  1. 使用npm link不错的方案

npm link

$ cd path/to/my-utils
$ npm link

$ cd path/to/my-project
$ npm link my-utils

如果是在全局环境下(npm i -g)安装的cli模块,可以直接:

$ cd path/to/swan-game-tool
$ sgt test

去掉link

$ npm unlink my-utils

注意事项

npm link只是为了进行调试,验证模块的正确性,日常开发维护中,应该通过单元测试来保证模块质量。