Angularjs   发布时间:2022-04-20  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了我应该使用哪种方法手动引导我的AngularJS?大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
我看到以下:
angular.bootstrap(document,['TodoApp']);
angular.bootstrap(angular.element("body")[0],['TodoApp']);

还有AngularJS文档提到这,我不是真的理解。

angular.element(document).ready(function() {
     angular.bootstrap(document);
   });

这些方法有什么区别吗?特别是从Angular docs做的最后一个方法是什么?是否比其他更好使用?

它们大致相同,有一些区别:
angular.bootstrap(document,['TodoApp']);

如果你的脚本加载在页面的结尾(而不是标题),这将工作。

否则,在启动应用程序时不会加载DOM(将不会有任何模板要编译,指令将不会有任何效果)。

一个工作:plnkr

一个不:plnkr

angular.bootstrap(angular.element("body")[0],['TodoApp']);

和以前一样,使用body作为应用程序的根。它使用了一个在jqLit​​e中不可用的选择器,因此您需要在应用程序中包含完整的jQuery。

我不知道什么是使用身体而不是文档的优势,但可能有关于e2e测试,如解释在comment

plknr

angular.element(document).ready(function() {
  angular.bootstrap(document);
});

这个实际上等待DOM被加载,所以即使你在脚本中包含你的脚本,它也会工作。

这基本上与jQuery的$(document).ready(但是使用jqLit​​e的angular.element)相同。

在最后一个例子中,没有模块被传递给引导函数,很可能你需要声明你的主模块,除非你的应用程序只包含全局命名空间中的控制器。

所以最后一个选项将像下面,以便类似于其他两个:

angular.element(document).ready(function() {
  angular.bootstrap(document,['TodoApp']);
});

plknr

我猜,大多数时候最安全的赌注是使用这最后一种方法

大佬总结

以上是大佬教程为你收集整理的我应该使用哪种方法手动引导我的AngularJS?全部内容,希望文章能够帮你解决我应该使用哪种方法手动引导我的AngularJS?所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。