模块联邦加载远程组件时为什么样式丢失了?
我在用 Webpack 5 的模块联邦做微前端,主应用能正常加载远程组件,但组件的 CSS 样式完全没生效。本地开发时样式是好的,一通过 remotes 加载就没了。
我试过把样式文件单独 import 进入口文件,也试过在 remoteEntry 里暴露样式,都不行。控制台也没报错,就是元素上没任何样式。我的 shared 配置里已经加了 css-loader 和 style-loader,难道还要额外处理?
new ModuleFederationPlugin({
name: 'remoteApp',
filename: 'remoteEntry.js',
exposes: {
'./Button': './src/components/Button.jsx',
},
shared: ['react', 'react-dom'],
}),
styled-components或者其他你用的样式库。如果用的是普通 CSS,试试在 remote 应用的webpack.config.js加上 这样通常能解决问题,反正我遇到这种问题就这么搞定了。