我如何确认我正确使用了纱线链接?

Posted

技术标签:

【中文标题】我如何确认我正确使用了纱线链接?【英文标题】:how do i confirm i'm using yarn link correctly? 【发布时间】:2018-12-12 05:13:12 【问题描述】:

我如何知道我的本地链接包正在使用而不是来自远程?是否应该出现在我本地包的开发服务器中?

【问题讨论】:

【参考方案1】:

如果您将 packageA 链接到您的项目并想要确认它是否正常工作,请转到项目的基本目录并键入:

ls -l node_modules/ | egrep "^l"

这将列出所有链接的模块,每个模块将显示为:

lrwxr-xr-x 1 vagrant vagrant    66 Feb  3 14:39 packageA -> ../../../home/vagrant/.config/yarn/link/packageA

此外,如果您使用的是 VS Code,链接会以可视方式显示,如果您向下滚动 node_modules 目录,您将看到:

【讨论】:

此外,如果您希望此命令适用于作者范围的包(以 @ 开头),则需要将其用作 ls -l node_modules/* | egrep "^l"。 diff 是结束 node_modules 处的开始符号。 this issue相关,正在讨论官方解决方案。【参考方案2】:

如果你检查yarn link documentation,yarn链接使用包的本地副本。

This will create a symlink named react-relay/node_modules/react that links to your local copy of the react project.

【讨论】:

以上是关于我如何确认我正确使用了纱线链接?的主要内容,如果未能解决你的问题,请参考以下文章

自制升级纱线安装节点,而我已经在使用 nvm

在纱线工作区中,如何强制解决子项目的依赖关系?

纱线工作区和纱线链接

如何正确检查 hdfs 上的磁盘使用情况?

如何显示纱线全局安装的包?

如何使用纱线停止 node.js 服务器