Javascript monorepo中使用Webpack 4的主字段解析不一致
在使用Lerna和Thread工作区连接的monorepo中,其中一个包是Next.js应用程序,它依赖于monorepo内部的几个包 monorepo中的所有可消费软件包都是用现代javascript编写的,并且在其Javascript monorepo中使用Webpack 4的主字段解析不一致,javascript,webpack,webpack-4,lerna,yarn-workspaces,Javascript,Webpack,Webpack 4,Lerna,Yarn Workspaces,在使用Lerna和Thread工作区连接的monorepo中,其中一个包是Next.js应用程序,它依赖于monorepo内部的几个包 monorepo中的所有可消费软件包都是用现代javascript编写的,并且在其package.jsons中有一个main字段和一个module字段,main字段指向使用CJS的传输代码,而main字段指向除ES模块转换为CJS之外传输的代码 如前所述,使用这些包的包是一个Next.js应用程序,它是使用Webpack4构建的。奇怪的是,其中一个已消费的软件包
package.json
s中有一个main
字段和一个module
字段,main
字段指向使用CJS的传输代码,而main
字段指向除ES模块转换为CJS之外传输的代码
如前所述,使用这些包的包是一个Next.js应用程序,它是使用Webpack4构建的。奇怪的是,其中一个已消费的软件包被解析为main
字段,而所有其他软件包都被正确解析为模块
字段
我甚至尝试手动将resolve.mainField
设置为['module','main',]
,但没有效果
我在文档中找不到任何可以解释这种行为的东西,如果有任何提示,我将不胜感激在2020年面对完全相同的问题。有没有找到解决不一致的方法?