我是Angular JS的初学者。我正在通过下面的链接。http://docs.angularjs.org/tutorial/step_00
引导文件是什么?他们在哪里?
什么是自动引导和引导的手动初始化?我从链接http://docs.angularjs.org/guide/bootstrap中阅读了如下所示的手动初始化的缺点。
谁能解释一下这里的缺点是什么?
尽管上面的每个人都回答得很完美,我发现了我要找的东西,但是仍然缺少一个可行的例子。
在理解以下AngularJS中的自动/手动引导时,以下示例将有很大帮助:
AngularJS:自动引导:
当DOMContentLoaded事件或将angular.js脚本下载到浏览器并将document.readyState设置为完成时,Angular会自动初始化/引导。在这一点上,AngularJS寻找ng-app指令。找到ng-app指令后,Angular将:
加载与指令关联的模块。
创建应用程序注入器。
从ng-app根元素开始编译DOM。
此过程称为自动引导。
<html>
<body ng-app="myApp">
<div ng-controller="Ctrl">Hello {{msg}}!</div>
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.4.5/angular.min.js"></script>
<script>
var app = angular.module('myApp', []);
app.controller('Ctrl', function($scope) {
$scope.msg = 'Nik';
});
</script>
</body>
</html>
JSFiddle:http : //jsfiddle.net/nikdtu/ohrjjqws/
AngularJS-手动引导:
您可以使用angular.bootstrap()函数手动初始化angular应用。此函数将模块作为参数,应在angular.element(document).ready()函数中调用。当DOM准备好进行操作时,会触发angular.element(document).ready()函数。
<html>
<body>
<div ng-controller="Ctrl">Hello {{msg}}!</div>
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.4.5/angular.min.js"></script>
<script>
var app = angular.module('myApp', []);
app.controller('Ctrl', function($scope) {
$scope.msg = 'Nik';
});
//manual bootstrap process
angular.element(document).ready(function () { angular.bootstrap(document, ['myApp']); });
</script>
</body>
</html>
JSFiddle:http : //jsfiddle.net/nikdtu/umcq4wq7/
注意 :
手动引导应用程序时,不应使用ng-app指令。
您不应该混淆自动和手动引导应用程序的方式。
如上述示例中所述,在手动引导应用程序之前,请定义模块,控制器,服务等。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句