npm link作用
公司内部开发了公用库,发布在了内部npm服务器,由于随着需求改动,公用库要不停的频繁修改,每次改动都要发布,然后引入组件库的主项目要重新安装依赖,过程繁琐,比较耗时。使用npm link 无需频繁发版,改动即刻生效。
npm link使用方法
在这里,我们有两个项目,一个是npm-link-module
,是我们要开发的npm模块,另一个是npm-link-example
,是我们要运行npm模块的项目
首先,进入我们的npm-link-module
项目,执行npm link
cd npm-link-module
npm link
执行命令后,npm-link-module会根据package.json上的配置,被链接到全局,路径是{prefix}/lib/node_modules/<package>
,这是官方文档上的描述,我们可以使用npm config get prefix
命令获取到prefix的值(不过我这里使用的是windows,实际被链接到的路径是{prefix}/node_modules/<package>
,不知道是不是npm升级的原因),如果是win系统的话,实际观察,会发现在{prefix}/lib/node_modules/<package>
路径下的node-link-module
是一个快捷方式
然后,进入npm-link-example
项目,执行 npm link npm-link-module
cd npm-link-example
npm link npm-link-module
npm-link-module
会被链接到 npm-link-example/node_modules
下面,同样也是快捷方式
OK,链接创建完成。
实践应用
好,让我们测试一下创建链接之后会有哪些便利
之前在npm-link-module
里,我是这样写的
我们在npm-link-example
引用然后运行
运行成功
然后,我们修改下npm-link-module
再次运行npm-link-example
看到了吧,所有对npm-link-module
的修改会被直接映射到 npm-link-example/node_modules/npm-link-module
下面
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。