迁移到 yarn PnP:将 webpack resolve.modules 与 pnp 集成

Migrate to yarn PnP: integrating webpack resolve.modules with pnp

我使用 webpack 文档中的类似模式,这样我就可以像模块一样遍历我的组件。而不是使用../../../path/to/component。我只是 /path/to/component.

我正在使用 yarn@latest 并希望迁移到即插即用 (pnp)。我想知道是否有办法迁移此配置,以便我仍然可以利用它。可能是 require.resolve 所有模块的方法?

const path = require('path');

module.exports = {
  //...
  resolve: {
    modules: [path.resolve(__dirname, 'src'), 'node_modules'],
  },
};

https://yarnpkg.com/features/protocols#why-is-the-link-protocol-recommended-over-aliases-for-path-mapping

如文档所述,yarn 2 开箱即用。无需进一步配置

通过 mocha 测试使其达到 运行 虽然更复杂,但最终我不得不利用 babel 编译器将模块组件转换为正常遍历 运行 测试