单个angular页面能否有两个ng-app?

单个angular页面能否有两个ng-app?

       ng-app是声明angular的作用边界的。

<div ng-app="app1" ng-init="func1()"></div>
<div ng-app="app2" ng-init="func2()"></div>
     只有第一个ng-app会被angular加载,其他的职能手动启动

     用 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>


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值