zoukankan      html  css  js  c++  java
  • 指令定义对象--进阶阶段

    指令定义对象

    每个指令定义的工厂函数,需要返回一个指令定义对象,编译器/$compile 在编译时就根据这个定义对象对指令进行展开。

    指令定义对象的常用属性如下:

    • link

    link函数负责实现DOM和scope的数据绑定,通常在link里执行DOM事件监听和数据变化监听。 link函数在template执行后被调用。link是最常用的属性,一个指令的逻辑通常在link函数 里实现。

    link函数的形式如下:

    1. function link(scope,iElement,iAttrs,controller,transcludeFn){...}
    • restrict

    可以是EACM这四个字母的任意组合,用来限定指令的应用场景。如果不指定这个属性, 默认情况下,指令将仅允许被用作元素名和属性名:

    1. * E - 元素名,例如:<my-directive></my-directive>
    2. * A - 属性名,例如:<div my-directive="exp"></div>
    3. * C - 类,例如:<div class="my-directive: exp;"></div>
    4. * M - 注释,例如:<!-- directive:my-directive exp -->
    • template

    template是一个HTML片段,可以用来:

    1. * 替换指令的内容。这是默认的行为,可以使用replace属性更改。
    2. * 替换指令本身(如果replace属性设为TRUE的话)。
    3. * 包裹指令的内容(如果transclue属性设为TRUE的话)。
    • replace

    指明是否使用template替换指令元素。

    1. * true - 编译时,将使用template替换指令元素
    2. * false - 编译时,将使用template替换指令元素的内容
  • 相关阅读:
    SQL Challenges靶机
    XSS靶机1
    djinn靶机
    Sunset靶机
    统计学 一 集中趋势
    测试
    测试
    统计学 一 集中趋势
    算法分析
    代码测试
  • 原文地址:https://www.cnblogs.com/rainheader/p/4625057.html
Copyright © 2011-2022 走看看