Angular实践----定制你自己的指令

在angular中我们可以通过directive()方法来定制自己需要的指令。

指令需要很多配置,以下是指定的属性定义列表:

  • restrict:用来描述指令的声明风格,常用的值有:E(元素),A(属性),C(样式),M(注释)。这些值可以组合使用,默认值为A。
  • priority:设置当前指令相对于当前元素上其他指令的执行顺序。
  • template:字符串形式的指令模板。
  • templateUrl:使用url方式加载指令模板。
  • replace:值为boolean,true表示替换指令所在的元素,false表示把当前指令追加到所在元素的内部。
  • transclue:把指令元素中的子节点移动到一个新模板的内部。
  • scope:为当前指令创建一个新的作用域,而不是继承父作用域。
  • controller:为指令创建一个控制器,该控制器主要用于多个指令中通信的场景。
  • require:声明了这个属性的时候,表示必须存在require的指令,当前指令才会工作。
  • link:一个函数,在指令link阶段调用,主要用于生成dom 元素实例,并为dom元素绑定事件,设置数据绑定。
  • compile:一个函数,在指令compile阶段调用。

需要注意的是,在创建指令的时候,并不需要你配置所有的参数,根据你指令的应用范围与功能来定制。

原文地址:https://www.cnblogs.com/cwWeb/p/3515117.html