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是一个快捷方式
image.png

然后,进入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下面,同样也是快捷方式

image.png

OK,链接创建完成。

实践应用

好,让我们测试一下创建链接之后会有哪些便利

之前在npm-link-module里,我是这样写的

image.png
我们在npm-link-example引用然后运行

image.png
image.png
运行成功

然后,我们修改下npm-link-module

image.png
再次运行npm-link-example

image.png

看到了吧,所有对npm-link-module的修改会被直接映射到 npm-link-example/node_modules/npm-link-module下面


荔枝
10 声望0 粉丝