2

我正在使用 100 多个模板优化一个相当大的 angularjs 应用程序。我使用 grunt 进行自动化。我在这里想要实现的是,我需要在生产代码中的所有 url 前面加上一个 cdnUrl,因为我计划在 cdn 上托管静态资产。

我尝试使用这个grunt 插件来做到这一点,并且我成功地替换了代码中的所有引用,除了<ng-include>标签中的 templateUrls 和 UI 路由器状态配置中的那些。

$templateCache因此,我想通过使用插件的服务将我所有的 Angular js 模板预编译到单个 js 文件中来解决该问题。在检查了预编译的 js 文件的大小后,我发现即使将 html 缩小,它也高达 1.13 MB。

与我的整个应用程序相比,我的整个应用程序在第一次加载时只需要1.5 ~ 1.7 mb。所以我觉得包含这个预编译的模板是不清晰的,它会强制在用户的设备上下载大量额外的重量。还有一些视图部分仅限于某些用户,一般来说,我觉得为应用程序的那些部分加载数据是不公平的,许多用户无论如何都不会访问。

那么你们在这种情况下有什么建议呢?在生产中使用 $templateCache 是否仍然更可取?如果没有任何关于使用 grunt 为带有 cdn url 前缀的角度模板的帮助将是有帮助的。

4

0 回答 0