单个angular页面能否有两个ng-app?
ng-app是声明angular的作用边界的。
<div ng-app="app1" ng-init="func1()"></div>
<div ng-app="app2" ng-init="func2()"></div>
用 angular.bootstrap 手动加载
|
1
2
3
4
5
|
<div id="app2" ng-init="func2()"></div>
<script>
var app2 = angular.module('app2', []);
angular.bootstrap(document.getElementById("app2"), ['app2']);
</script>
|
ng-app是angular的一个指令,代表一个angular应用(也叫模块)。使用ng-app或ng-app=""来标记一个DOM结点,让框架会自动加载。也就是说,ng-app是可以带属性值的。如果想要实现自动加载,那么就不能让ng-app带有属性值。
<span style="font-size:18px;"><html>
<body ng-app>
<div>div1:{{1+3*2}}</div>
<script src="angular.js"></script>
</body>
</html></span>
1、不含ng-app,无法自动加载,这个比较好理解。
<span style="font-size:18px;"><html>
<body>
<div>div1:{{1+3*2}}</div>
<script src="angular.js"></script>
</body>
</html></span>
2、含有2个ng-app,那么只会自动加载第一个,这个也好理解。
<span style="font-size:18px;"><html>
<body>
<div ng-app>div1:{{1+3*2}}</div>
<div ng-app>div2:{{1+3*2}}</div>
<script src="angular.js"></script>
</body>
</html></span>
3、ng-app带有属性,不能自动加载
<span style="font-size:18px;"><html>
<body>
<div ng-app="app1">div1:{{1+3*2}}</div>
<script src="angular.js"></script>
</body>
</html></span>
4、不带属性的在前,带属性的在后。ng-app标记的模块可以自动加载
<span style="font-size:18px;"><html>
<body>
<div ng-app>div1:{{1+3*2}}</div>
<div ng-app="app1">div1:{{1+3*2}}</div>
<script src="angular.js"></script>
</body>
</html></span>
5、带属性的在前,不带属性的在后。ng-app标记的模块不能自动加载
<span style="font-size:18px;"><html>
<body>
<div ng-app="app1">div1:{{1+3*2}}</div>
<div ng-app>div1:{{1+3*2}}</div>
<script src="angular.js"></script>
</body>
</html></span>

9713

被折叠的 条评论
为什么被折叠?



