首页 > 代码库 > angular学习笔记(三十)-指令(1)

angular学习笔记(三十)-指令(1)

之前在 angular学习笔记(十九)-指令修改dom 里面已经简单的提到了angular中的指令,现在来详细的介绍 ‘指令‘ 

一.指令的创建:

dirAppModule.directive(‘directive-name‘,function(){    var obj = {        restrict:‘string‘,        priority:number,        template:‘string‘,        templateUrl:‘string‘,        replace:bool,        transclude:bool or string,        scope:bool or string,        controller:function(){},        require:‘string‘,        link: function(scope,element,attrs){},        compile: function(element,attrs,transclude){            return {                pre: function(scope,element,attrs,controller){},                post: function(scope,element,attrs,controller){}            }        }    };    return obj});

通过 app.directive(‘directive-name‘,function(){})来创建一个服务. directive()方法传入两个参数.

第一个参数:是一个字符串,也就是指令的名字.一般的命名规则是用‘-‘来分割,‘-‘前是命名空间,‘-‘后是给这个指令取的名字.其实我们之前用到的比如‘ng-repeat‘,‘ng-model‘,‘ng-view‘...等,这些都是angular自带的指令.他们的实质也就是指令.所以,自己创建的指令不应该使用ng作为命名空间.

第二个参数:是一个函数,该函数返回一个json对象.该对象一共可以有上面列出来的11个属性.在后面的文章中一一讲解这些属性.