当你部署你的ng2-app时,你应该使用AOT(提前编译)。 我想你正在使用JIT(及时编译)。
在angular2引导页,
随着AOT,浏览器下载的应用程序的预编译的版本。浏览器加载可执行代码,以便可以立即呈现应用程序,而无需等待先编译应用程序。
当您使用JIT编译时,您的浏览器将下载由angular2编译器定义的vendor.js,它将及时编译您的应用程序。它会太慢,你的客户必须下载供应商文件。当您使用AOT时,您不必使用供应商文件,因此资源正在变小。
我建议您在部署应用程序时使用AOT编译,并使用资源大小的延迟加载。
如果您对ng2 AOT编译感兴趣,请阅读本指南。
angualar2-cookbook-AOT
这里是例子angular2应用与webpack2和延迟加载。
在这里使用文件结构和配置文件。
当我使用示例应用程序进行测试时,捆绑了aot的文件小于500KB。
angular2-webpack2-aot
当您使用AOT与@ ngtools /的WebPack或任何编译,
只是把它与AOT在你的S3存储桶编译的文件dist目录中的所有文件,我建议使用AWS用于您的s3存储桶资源的云端缓存。
你能解决这个问题吗? – 2017-03-10 02:50:28
是的,请参阅下面的评论 – Raj