如何在开发npm包时使用软链进行本地调试?

260 阅读2分钟

在开发npm包的时候,每次调试都需要发布才能使用,这样就非常麻烦,npm提供了软链(npm link)来简化这个过程。通过使用软链,开发者可以在不实际发布包的情况下,在本地环境中将一个npm包链接到另一个项目中进行测试和调试。

一、 npm

步骤:

  1. 首先,在npm包目录下运行npm link命令,这会在全局环境中创建一个指向该包的符号链接;
  2. 然后,在使用这个包的项目目录下运行npm link package-name(这里的package-name是npm包的package.json中的名称name),这样就可以在项目中使用本地的npm包。
  3. 移除软链: npm unlink package-name

二、 yarn

除了npm自带的软链功能外,Yarn 也提供了类似的工具来帮助开发者进行本地开发和调试。

步骤:

  1. 首先,在包目录下运行 yarn link 来在全局环境中创建一个符号链接;
  2. 然后,在使用这个包的项目中运行 yarn link package-name
  3. 移除软链: yarn unlink package-name

三、Yalc

Yalc提供了比 npm linkyarn link 更加轻量且隔离性更好的解决方案,

步骤:

  1. 安装 Yalc:npm install -g yalc 或者 yarn global add yalc

  2. 在 包目录下运行命令yalc publish 来发布这个包到本地 Yalc 存储库; image.png

  3. 在目标项目下创建关联yalc add package-nameimage.png

  4. 如果对包进行了修改,只需再次在包目录下重新发布 yalc publish,然后在目标项目中运行 yalc update 即可同步最新版本;

  5. 不再需要某个包时,可以使用 yalc remove package-name 来从 Yalc 存储库中移除。

如果不想全局安装,也可以使用 npxyarn dlx 来运行 yalc,只需要在对应的命令前加上对应的命令,比如npx/[yarn dlx] yalc publish

npx 可以直接运行未安装的包,无需提前安装,适用于一次性命令。