我ng-include src在HTML的多个位置使用指令。每个人ng-include都为自己创建了一个孤立的范围,这显然给我带来了很多麻烦。
ng-include src
ng-include
例如。
<div ng-controller="parent"> <div ng-include src="'id1'"> </div> <div ng-include src="'id2'"> </div> <div ng-include src="'id2'"> </div> </div>
在上面提到的html中,正在创建4个作用域。controller默认情况下,在定义的父级中创建1个,默认情况下创建3个ng-include src。
controller
是否有可能阻止ng-include自身创建隔离范围?如果不可能,那么是否有解决方法?
您需要创建自己的指令,该指令可以在没有隔离范围的情况下加载指定的模板。
的HTML
<div ng-controller="parent"> <div my-directive template-path="id1"> </div> <div my-directive template-path="id2"> </div> <div my-directive template-path="id2"> </div> </div>
指示
.directive('myDirective', function() { return { restrict: 'AE', templateUrl: function(ele, attrs) { return attrs.templatePath; } }; });
工作朋克