当前位置: 首页 > 知识库问答 >
问题:

我应该使用哪种方法手动引导我的AngularJS?

柯乐童
2023-03-14
angular.bootstrap(document, ['TodoApp']);
angular.bootstrap(angular.element("body")[0], ['TodoApp']);
   angular.element(document).ready(function() {
     angular.bootstrap(document);
   });

这些方法有什么区别吗?特别是最后一种方法是什么?一个比另一个好用吗?

共有1个答案

杜联
2023-03-14

它们大致相同,但有几个不同之处:

angular.bootstrap(document, ['TodoApp']);

如果您将脚本加载到页面的末尾(而不是页眉),这将起作用。

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

这个不是:plnkr

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

与前面相同,使用body作为应用程序的根。它使用了jqLite中没有的选择器,因此需要在应用程序中包含完整的jQuery。

我不确定使用body代替document有什么好处,但可能与e2e测试有关,如本注释所述

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

这一个实际上等待DOM被加载,因此即使您将脚本包含在头中,它也能工作。

这与jQuery的$(document).ready()基本相同,但使用了jQLiteAngular.Element

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

所以最后一个选项会像下面这样,为了和其他两个类似:

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

PLKNR

我想大多数时候最安全的方法是使用最后一种方法。

 类似资料:
  • 问题内容: 我已经看到以下内容: AngularJS文档也提到了这一点,我不太了解。 这些方法之间有什么区别吗?特别是Angular文档的最后一种方法是做什么的?一个比另一个更好用吗? 问题答案: 它们大致相同,但有一些区别: 如果您 在页面末尾 (而不是在标题中)加载 了 脚本,这将起作用。 否则,在引导应用程序时将不会加载DOM(不会编译任何模板,指令不会有任何效果)。 此作品:plnkr 这

  • 我知道类似的问题已经被问过很多次了。但在阅读了这些帖子之后,我仍然感到非常困惑,尤其是在iOS 10中引入了之后。 官方文档提到了我可以处理远程通知的3种方法: 实现以在应用程序位于前台时处理通知 当应用程序处于后台或未运行时,实现 但文档中也提到:在iOS和tvOS中,系统将通知有效负载传递给app委托的方法 所以 要在应用处于后台/非活动状态时处理远程通知,我应该将我的代码放在3中的应用程序委

  • 问题内容: 我正在尝试决定要选择哪种mime类型来返回mp3数据(由php提供) 根据此mime类型列表:http : //www.webmaster-toolkit.com/mime-types.shtml 这些之间有什么区别,我应该使用哪个? 问题答案: 最好的选择是使用RFC定义的 mime-type 。

  • 我有一个客户端anger-js应用程序。我有一个服务器端nodejs应用程序接口。客户端和服务器端应用程序位于不同的域上。客户端使用API获取或发布一些数据。客户端还需要从服务器端获取图像并在浏览器中显示它们。 我使用护照nodejs模块进行身份验证。我不知道哪种身份验证策略更适合我。我认为有两种类型的身份验证策略:基于令牌的和基于cookie的。我认为这两种类型在我的情况下都没用: > < li

  • 我看到了两种做同样事情的方法,但我不确定什么是正确的方法。 组件 https://github.com/buckyroberts/react-redux-boilerplate 第一种方法使用两个不同的函数和,而另一种方法使用@ 当我使用@Connect时,我会收到一大堆警告,说它还没有最终完成,可能会更改。

  • 问题内容: 在这个问题中,如何在C 11中有效地选择标准库容器?是选择C 集合时要使用的便捷流程图。 我认为对于那些不确定应该使用哪个集合的人来说,这是一个有用的资源,因此我试图找到类似的Java流程图,但未能做到。 哪些资源和“备忘单”可用来帮助人们选择使用Java进行编程时使用的正确Collection?人们如何知道应该使用哪些List,Set和Map实现? 问题答案: 由于找不到相似的流程图