我喜欢纱线工作区,但更多时候,我发现自己不得不拿出一个特定的包,因为与外部工具不兼容。
主要的问题是我没有他们的源代码 相对节点单元 ,但高于几个级别(通常情况下,这对于纱线工作区和节点是正常的)。
例如, ZeppelinOS 在相对路径中未找到“openzeppelin eth”时,给出以下错误消息:
找不到佐斯。“openzeppelin eth”的json文件。确保由npm包提供。
有没有办法强制复制一个包?我读到 --focus ,但这不是我需要的。
你要找的是 nohoist https://yarnpkg.com/blog/2018/02/15/nohoist/
nohoist
基本上你有两个选择:
"workspaces": { "nohoist": ["react-native", "react-native/**"] }
"workspaces": { "packages": ["packages/*"], "nohoist": ["**/react-native", "**/react-native/**"] }
如果你想分享包裹 xyz 在所有子项目中,然后在根项目中设置,否则在子项目中设置。
xyz