标签:
野兽的 ng api 学习 - - ngInclude、ngTransclude
这2个都是HTML DOM嵌入指令
ngInclude
读取,编译和插入外部的HTML片段。
格式:ng-include=“value”<ng-include src=”value” onload=“ex”autoscroll=“str”></ng-include> class=”ng-include:value”
value:string类型 模板id或者模板url
ex:表达式,载入的时候执行。
autoscroll:页面载入后,当ngInclude需要调用$anchorScroll移动到指定位置的时候使用。
使用代码:
<div ng-include="‘temp‘" onload="value=‘5‘" autoscroll="" ></div>
<script type="text/ng-template" id="temp">
<input ng-model="text" />
{{value}}
</script>
这里需要注意的是 <script>标签的type是ng格式的 type="text/ng-template"。以上指令就是把<script>标签里的内容嵌入到上面的div里了。
ngTransclude
这个指令用于标记使用嵌入式的指令中包含的DOM插入点。
格式:ng-transclude
使用代码:
<div ng-app="Demo">
<div ng-controller="demoCtrl">
<input ng-model="words" />
<my-div>{{words}}</my-div>
</div>
</div>
<script>
angular.module("Demo", [])
.directive("myDiv", function () {
return {
restrict: ‘E‘,
transclude: true,
template:"<div><p>ngTransclude:</p><p ng-transclude></p><p>End</p></div>"
}
})
.controller("demoCtrl", ["$scope", function ($scope) {
$scope.words = "Hello World";
}])
</script>
在指令中嵌入指令外的DOM元素,值的注意的是,就算这个指令创建了自己的子scope,这个DOM元素所在的scope也不是这个指令的scope,而是指令所在的scope。
洗洗睡去了 今天写了三篇了呢 -。-
野兽的Angular Api 学习、翻译及理解 - - ngInclude、ngTransclude
标签:
原文地址:http://www.cnblogs.com/ys-ys/p/4965156.html