在开发npm包的时候,每次调试都需要发布才能使用,这样就非常麻烦,npm提供了软链(npm link)来简化这个过程。通过使用软链,开发者可以在不实际发布包的情况下,在本地环境中将一个npm包链接到另一个项目中进行测试和调试。
一、 npm
步骤:
- 首先,在npm包目录下运行
npm link命令,这会在全局环境中创建一个指向该包的符号链接; - 然后,在使用这个包的项目目录下运行
npm link package-name(这里的package-name是npm包的package.json中的名称name),这样就可以在项目中使用本地的npm包。 - 移除软链:
npm unlink package-name
二、 yarn
除了npm自带的软链功能外,Yarn 也提供了类似的工具来帮助开发者进行本地开发和调试。
步骤:
- 首先,在包目录下运行
yarn link来在全局环境中创建一个符号链接; - 然后,在使用这个包的项目中运行
yarn link package-name。 - 移除软链:
yarn unlink package-name
三、Yalc
Yalc提供了比 npm link 或 yarn link 更加轻量且隔离性更好的解决方案,
步骤:
-
安装 Yalc:
npm install -g yalc或者yarn global add yalc; -
在 包目录下运行命令
yalc publish来发布这个包到本地 Yalc 存储库; -
在目标项目下创建关联
yalc add package-name; -
如果对包进行了修改,只需再次在包目录下重新发布
yalc publish,然后在目标项目中运行yalc update即可同步最新版本; -
不再需要某个包时,可以使用
yalc remove package-name来从 Yalc 存储库中移除。
如果不想全局安装,也可以使用 npx 或 yarn dlx 来运行 yalc,只需要在对应的命令前加上对应的命令,比如npx/[yarn dlx] yalc publish 。
npx可以直接运行未安装的包,无需提前安装,适用于一次性命令。