Angular 自定义指令主要有两种:组件型指令和装饰器型指令。
1.组件型指令
组件型指令是小型的,自封装和内聚的一个整体,它包含业务所需要显示的视图以及交互逻辑。
组件型指令的写法通常是这样的:
//声明一个指令
Angular.module(‘moduleName’).directive(‘directiveName’,function(){
Return {
//可以用作html元数,也可以用作html属性
Restrict: ‘EA’,
//使用独立作用域
Scope: {configure: ‘=’},
//指定模板
templateUrl: ‘XXXX.html’,
//声明指令控制器
Controller: function functionName($scope){
………………
}
};
})
指令中return的这个结果,我们成为“指令定义对象”。
Restrict:用来表示这个指令的应用方式,它的取值可以是E(元素),A(属 性),C(类名),M(注释)这几个字母的任意组合,实际开发中常用E,A,EA这三个。对于组件型指令来说,标准用法是E,但是为了兼容IE8,通常也支持A。