angularjs指令系统系列课程(1):目录
angularjs里面有一套十分强大的指令系统
比如内置指令:ng-app,ng-model,ng-repeat,ng-init,ng-bind等等
从现在开始我们讲解AngularJS自定义指令,
对于指令的命名;在定义时采用驼峰命名比如:helloDirective,
在页面中调用时会按照大写字母用-进行分割,并将大写字母变成小写:hello-directive
先看一个简单的指令:
js
angular.module('app',{}).directive('helloDirective', function() {
    return {
        template: '<div><span>hello directive</span></div>'
    }
});
html:
<section> <div hello-directive></div> </section>
运行结果:
 审查代码:
我们看下AngularJS里新定义一个指令的完整参数写法:
newsApp.directive('newDirective', function() {
    return {
        priority: 0, //优先级
        template: '',
        templateUrl: '', //引入模板链接
        replace: false, //替换
        transclude: false, //是否保留原有内容
        restrict: 'E', // E C A M
        controller: '', // or function(){}
        scope: false, //true or {}
        require: ['?ngModel'],//依赖项
        compile: function compile(tElement, tAttrs, transclude) {
            return {
                pre: function preLink(scope, iElement, iAttrs, controller) {
                },
                post: function postLink(scope, iElement, iAttrs, controller) {
                }
            }
        },
        link: function postLink(scope, iElement, iAttrs) {
        }
    }
});
针对指令的这些参数我们进行分布讲解,课程目录:
- 
第一节:目录
 - 
第二节:优先级priority,模板template,模板页templateUrl
 - 
第三节:替换replace,内容保留transclude,作用方式restrict
 - 
第四节:作用域scope
 - 
第五节:控制器controller
 - 
第六节:依赖项require,ngModel组件
 - 
第七节:compile函数
 - 
第八节:link函数
 
                    
                

                
            
        
浙公网安备 33010602011771号