一、綁定初始化,自動加載
通過綁定來進行angular的初始化,會把js代碼侵入到html中。
ng-app
是angular的一個指令,代表一個angular應用(也叫模塊)。使用ng-app
或ng-app=""
來標記一個DOM結點,讓框架會自動加載。也就是說,ng-app
是可以帶屬性值的。
<body ng-app="myApp"> <div ng-controller="myCtrl"> {{ hello }} </div> <script type="text/javascript"> var myModule = angular.module("myApp",[]); myModule.controller("myCtrl",function($scope){ $scope.hello = "hello,angular!"; }); </script></body>
二、手動初始化
如果想對對初始化有更多的控制權,可以采用自定義手動引導方法初始化代替angular的自動初始化。比如你需要在angular編譯模板之前做一些事情,比如改變模板某些內容。
Angular中也提供了手動綁定的api――bootstrap,它的使用方式如下:
angular.bootstrap(element, [modules], [config]);
其中第一個參數element:
是綁定ng-app
的dom元素;
值得注意的是:
angular.bootstrap
只會綁定第一次加載的對象。<html> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <script src="http://apps.bdimg.com/libs/angular.js/1.2.16/angular.min.js"></script><body id="body"> <div ng-controller="myCtrl"> {{ hello }} </div> <script type="text/javascript"> var app = angular.module("bootstrapTest",[]); app.controller("myCtrl",function($scope){ $scope.hello = "hello,angular from bootstrap"; }); // angular.bootstrap(document.getElementById("body"),['bootstrapTest']); angular.bootstrap(document,['bootstrapTest']); </script></body></html>
<html> <head> <script src="angular.js"></script> <script> // 創建moudle1 var rootMoudle = angular.module('moudle1', []); rootMoudle.controller("controller1",function($scope){$scope.name="aty"}); // 創建moudle2 var m2 = angular.module('moudle2', []); m2.controller("controller2",function($scope){$scope.name="aty"}); // 頁面加載完成后,再加載模塊 angular.element(document).ready(function() { angular.bootstrap(document.getElementById("div1"),["moudle1"]); angular.bootstrap(document.getElementById("div2"),["moudle2"]); }); </script> <head> <body> <div id="div1" ng-controller="controller1">div1:{{name}}</div> <div id="div2" ng-controller="controller2">div2:{{name}}</div> </body> </html>
總結
以上就是關于angular.js初始化的全部內容了,希望本文的內容對大家學習或者使用Angular.js能帶來一定的幫助,如果有疑問大家可以留言交流,謝謝大家對武林網的支持。
新聞熱點
疑難解答