我有一个非常大的,较旧的MVC应用程序,在该应用程序中,我们已开始将Webpack用于某些TS / JS。过去,我曾尝试实现代码拆分,但是生成的模块庞大且笨拙。整个事情非常混乱。由于与旧版浏览器的兼容性问题,我们最终不得不将其回滚。
我们正在努力在React中做更多的事情,并且我们希望避免在整个应用程序中复制React库,但是我们还没有准备好过渡到完整的SPA。相反,我们当前正在使用大量入口点文件(当前为44个)在路由上“拆分”应用程序。
是否可以仅将React和React-DOM模块提取到一个独立的模块中?我想我们仍然需要在使用它的地方将其导入,以免类型错误。
还是我们以传统的方式将React添加到页面上,并消除那些警告和错误?
TLDR:当使用多个入口点时,如何编码拆分反应本身?
答案 0 :(得分:0)
这应该起作用:
https://webpack.js.org/guides/code-splitting/#prevent-duplication
sendBody(Endpoint, ExchangePattern, Object)
我从来没有使用过太多的入口点,而是将其添加到您的webpack配置中,它应该开箱即用地提取到一个名为vendor〜main(long hash).js的块中。该页面底部的是分析工具,您可以检查包中是否有剩余的重复项。
编辑添加:更好:
https://webpack.js.org/plugins/split-chunks-plugin/#split-chunks-example-3
optimization: {
splitChunks: {
chunks: 'all'
}
}