Javascript 预编译angular js模板以加速应用程序启动

Javascript 预编译angular js模板以加速应用程序启动,javascript,angularjs,templates,precompile,Javascript,Angularjs,Templates,Precompile,我有一个很大的Angle应用程序,在主页中包含5个模板,使用 <script type="text/ng-template" id="/myMainTemplate.html">...</script> <script type="text/ng-template" id="/myTemplatePage2.html">...</script> <script type="text/ng-template" id="/myTemplat

我有一个很大的Angle应用程序,在主页中包含5个模板,使用

 <script type="text/ng-template" id="/myMainTemplate.html">...</script>
 <script type="text/ng-template" id="/myTemplatePage2.html">...</script>
 <script type="text/ng-template" id="/myTemplatePage3.html">...</script>
 <script type="text/ng-template" id="/myTemplatePage4.html">...</script>
。。。
...
...
...
但是,我的应用程序启动需要很多时间

删除模板2/3/4修复它,但当然破坏了应用程序,我猜angularjs编译5个模板花费了太多时间

是否有一种方法可以预编译angularjs模板,例如使用nodejs或类似的东西(可能与使用handlebar编译模板的方法相同)


如果我对
$compile
指令理解得很好,那么我的想法是将
$compile(myTemplate)
指令移动到客户端内部的服务器端

看来我错了,编译模板并不需要时间。浏览器加载所有页面的速度很慢,基本上document.ready事件需要一些时间才能启动


为了解决这个问题,我只在页面中包含我的主模板
,并且基于这个解决方案,我使用异步$http调用加载其他模板:

看看grunt-html2js任务


它将纯角度HTML模板转换为JavaScript,以便连接到主应用程序包中。一旦模板进入应用程序包,它们将在Angular的模板缓存中启动,以便立即加载。

不幸的是,它不会将它们转换为JavaScript函数,而是转换为字符串$编译仍然需要运行。这不是真的AOT。这是2014年的答案,伙计,AOT编译当时甚至不是一件事:)我知道。我仍然希望AOT现在可以在Angular JS中实现。