如何将项目迁移到扁平化模式?

我们有一个相当全面的倚仗项目,有许多依赖,用纱线pipe理。 现在我们想将其转换为纱线平面模式,但纱线想要将所有依赖转换为平面模式,并要求使用版本的几十个依赖关系。 有时这很简单,就像在1.0.2和1.0.4之间select一样。 但也有我需要在0.0.3,1.0.19和2.2.1之间进行select的情况,以及我将要select的任何版本,有些事情会中断。 由于纱线总是转换整个项目和所有的依赖关系,所以debugging困难的版本select实际上会破坏整个应用程序是相当复杂的事实。

这在lodash 3和4中尤其是问题。lodash在版本4中改变了模块结构,所以两个主要版本都是不兼容的。 不幸的是,在一个普通的应用程序的应用程序有很多的包依赖于lodash 3或lodash 4,他们都没有工作,因为各自的其他依赖项被打破。

有没有办法在“混合”模式下进行迁移,其中一些依赖关系是平坦的,有些则不是? 通过这种方式,我可以将单个软件包迁移到平面模式并testing应用程序,运行规格等,然后继续下一个软件包。

此外,我非常感谢任何有助于解决lodash问题的build议。

从来没听说过。 平面模式选项是被引入缓慢,但尚未受到重视。 我的印象是,Yarn的人正在努力使Yarn成为npm的一个很好的替代品,然后他们大量使用这个主要的新function。 因此,你可能正在遭受早期采用者的痛苦…