关于React 按需加载的问题?

发布于 2022-09-04 02:12:32 字数 494 浏览 16 评论 0

如题。关于实现React按需加载的疑问。

有三个路由A:/route/home/, B:/route/about, C:/route/contact

有26个组件分别为1,2,3....26

路由A 用到了1-10组件。
路由B 用到了5-20组件。
路由C 用到了15-26组件。

1.不能将所有组件打包成一个文件,因为这个文件太大
2.不能将所有组件分开打包,因为请求太多
3.不能将每个路由的组件单独打包一次,因为部分代码会重复打包

这种情况下,怎么实现按需打包和按需加载,并且能复用前面加载过的组件代码。

感觉有点不合常理? 。跪求,在线等。

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

孤独陪着我 2022-09-11 02:12:32

通常webpack不会这样分割模块的,如果确实这么分割了,你可能需要在配置文件里的plugins中添加两个插件

new webpack.optimize.DedupePlugin(),
Search for equal or similar files and deduplicate them in the output. This comes with   some overhead for the entry chunk, but can reduce file size effectively.
new webpack.optimize.AggressiveMergingPlugin(),
A plugin for a more aggressive chunk merging strategy. Even similar chunks are merged if the total size is reduced enough. As an option modules that are not common in these chunks can be moved up the chunk tree to the parents.

再次打包之后如果还是觉得不满意,就去https://github.com/webpack/do...查看更多optimize这一节的更多内容

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文