(三)ng-app的使用困惑和angularJS框架的自己主动载入

ng-app是angular的一个指令,代表一个angular应用(也叫模块)。使用ng-appng-app=""来标记一个DOM结点。让框架会自己主动载入。也就是说,ng-app是能够带属性值的。假设想要实现自己主动载入。那么就不能让ng-app带有属性值。

<html>
	<body ng-app>
		<div>div1:{{1+3*2}}</div>
		<script src="angular.js"></script>
	</body>
</html>


1、不含ng-app。无法自己主动载入,这个比較好理解。

<html>
	<body>
		<div>div1:{{1+3*2}}</div>
		<script src="angular.js"></script>
	</body>
</html>

2、含有2个ng-app,那么仅仅会自己主动载入第一个。这个也好理解。

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

3、ng-app带有属性,不能自己主动载入

<html>
	<body>
		<div ng-app="app1">div1:{{1+3*2}}</div>
		<script src="angular.js"></script>
	</body>
</html>

4、不带属性的在前,带属性的在后。ng-app标记的模块能够自己主动载入

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

5、带属性的在前,不带属性的在后。ng-app标记的模块不能自己主动载入

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


第4和5两种情况非常奇怪,不应该有这样的顺序的差别,也没有必要这样区分,推測应该是框架的bug。有人明确的话,欢迎不吝赐教。


 

原文地址:https://www.cnblogs.com/mfmdaoyou/p/6912400.html