angularJS1笔记-(10)-自定义指令(templateUrl属性)

index.html:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
</head>
<body>
<div ng-app="myApp">
    <script type="text/ng-template" id="customTags2">
       <div>
           hello{{name}}
       </div>
    </script>
    <div ng-controller="firstController">
        <custom-tags></custom-tags>
        <custom-tags2></custom-tags2>  <!--此处会去渲染script标签的模板-->
    </div>
</div>

<script type="text/javascript" src="../../vendor/angular/angularJs.js"></script>
<script type="text/javascript" src="app/index.js"></script>

<script>
</script>

</body>
</html>

  other.html:

<div>我是其他文件 {{name}}</div>

  index.js:

var myApp = angular.module('myApp', [],['$compileProvider',function ($compileProvider) {
    $compileProvider.directive('customTags',function () {
        return {
            restrict:"ECAM",
            templateUrl:'temp/other.html',
            replace:true  //如果此配置为true则替换指令所在的元素 如果为false或者不指定 则把当前指令追加到所在元素的内部
        }
    })
}])
    .directive('customTags2',function () {
        return{
            restrict:"ECAM",
            templateUrl:"customTags2",  //对应为type="text/ng-template" 指定script的标签id
            replace:true
        }
    })
    .controller('firstController',['$scope',function ($scope) {
        $scope.name = "张三"; //赋值
    }]);

  运行结果:

 

posted @ 2017-05-16 13:32  My Way!  阅读(2411)  评论(0编辑  收藏  举报