Ilya Grigorik建议在可能的情况下使用<script async>
标记。
是否有一种干净,首选的方式使用标签加载Angular.js应用程序,而不使用诸如angular.seed推荐的require.js或$ script.js工具之类的方法?
明显的问题是执行顺序。例如预防:
Uncaught ReferenceError: angular is not defined
https://www.igvita.com/2014/05/20/script-injected-async-scripts-considered-harmful/
最佳答案
如果有一些有用的内容可以显示而无需显示 Angular (例如,使用无头浏览器生成的预先生成的内容),并且脚本依赖于此,则仅此一种,那么可以找到一个解决方案:
angular.js
加载async
angular
这种繁忙的等待很丑陋,但是我看不到如何在加载完成时回叫。它可能行不通,我还没有尝试过。
我很可能除了框架所做的原始版本外什么也不做。
如果不需要它在all browsers中工作,则有
defer
标记。对我而言,defer
看起来像正确完成的async
。1因此,我猜想
angular-route.js
或类似的用户很不走运。这只是一个猜测,因为我从未尝试过按顺序加载两者。