【发布时间】:2017-06-21 06:59:33
【问题描述】:
我有几个模块供普通网络访问者使用。然后,更多的模块用于应用程序后台,而不必与公共站点一起加载。
创建具有不同模块的两个生产捆绑文件的正确方法是什么?我使用 webpack。
感谢您的任何想法!
【问题讨论】:
标签: angular webpack dev-to-production
我有几个模块供普通网络访问者使用。然后,更多的模块用于应用程序后台,而不必与公共站点一起加载。
创建具有不同模块的两个生产捆绑文件的正确方法是什么?我使用 webpack。
感谢您的任何想法!
【问题讨论】:
标签: angular webpack dev-to-production
有一种方法可以创建 chunks 的 js 文件。
您需要为延迟加载设置模块,然后为每个路由分支(后台和公共)配置CanLoad 守卫。
这样,只有一个包,但只有与该特定路由相关的 JS 被加载。
您可以阅读 Victor Savkin here 的精彩解释。
【讨论】:
经过数小时的研究,我发现了一些有用的资源可以帮助解决这个主题。
除了 jsfrocha 的回答。这种方法适用于 SPA 页面。每个模块都是按需加载的。
https://vsavkin.com/angular-router-preloading-modules-ba3c75e424cb#.otgochysw https://vsavkin.com/angular-router-declarative-lazy-loading-7071d1f203ee#.qorg2knor
对于多页应用程序,我们需要为每个页面创建一个单独的文件,并为所有页面加上一个公共文件。这个话题在这里讨论:
https://webpack.js.org/concepts/entry-points/#multi-page-application
webpack设置教程:http://tektutorialshub.com/angular-2-with-webpack-tutorial/
【讨论】: