使用npm link进行模块调试

概述

我还记得以前调试官网的 ckeditor 编辑器,每次改完编辑器包,而后发布编辑器包,而后在官网里面引入这个包进行调试,若是有问题,从新改动、发布编辑器包,继续引入,真的浪费了好多时间。其实相似这种场景均可以使用npm link,可以极大地简化操做。记录下来,供之后开发时参考,相信对其余人也有用。node

好比说有包 package-A 和项目 project-B,项目 project-B 须要用到包 package-A。而他们都是在 projects 文件夹里面,那么咱们能够直接在 project-B 里面 npm link,示例以下:npm

cd ~/projects/project-B  # go into the dir of project B
npm link ../package-A    # link the dir of your package

注意:link完以后,就至关于把这个包放到项目的 node_modules 里面去了,你能够直接在项目中引用这个包。json

仍是包 package-A 和项目 project-B,若是他们放在不一样的文件夹里面,而且相对路径不太方便写,或者他们的位置会变更,那么可使用以下方式:编辑器

cd ~/packages/package-A
npm link                   # creates global link
cd ~/projects/project-B
npm link package-A         # link-install the package

注意:link完以后,就至关于把这个包放到项目的 node_modules 里面去了,你能够直接在项目中引用这个包。调试

其它

1.若是是全局 link 的方式,也会把 bins 文件夹放到全局,因此也可让某些命令全局化。code

2.npm link 的原理是创建 symlink(软连接),可是并非以文件夹名字的形式,而是以package.json里面包的名字的形式。开发

相关文章
相关标签/搜索