纱 – 在不同的文件夹中安装软件包的依赖关系?

我想安装some_project的依赖关系。 我知道我可以cd进入some_project,然后运行yarn install

但是我想知道是否可以不改变目录?

有一个yarn的错误 ,防止--modules-folder选项按预期工作,但我个人不喜欢的事实,该选项必须在命令行中提供; 你将如何确保将来的安装将它们安装到你select的文件夹?

这就是为什么我想出这个鬼鬼祟祟的解决scheme,因为我想完全控制安装path,而不仅仅是前缀的node_modules版本。 它的工作原理和yarn ,实际上我们在生产中使用它,我们还没有问题(手指交叉)。

简而言之,您需要将node_modules symlinkpreinstall事件中的所需文件夹(以欺骗npmyarn ),然后删除postinstall事件中的symlink

然而,有一个注意事项,我没有在相关的答案中提到(因为我当时没有想到),也就是说,如果安装出现可怕的错误,事情可能不会按计划进行。 您将最终使用symlink ,因为postinstall事件可能没有被触发,然后下一次安装可能会失败,因为symlink已经存在。