• Angular require(抄别的)


    1. require参数的值可以用下面的前缀进行修饰,这会改变查找控制器时的行为:
      ?
      如果在当前指令中没有找到所需要的控制器,会将null作为传给link函数的第四个参数。
      ^
      如果添加了^前缀,指令会在上游的指令链中查找require参数所指定的控制器。
      ?^
      将前面两个选项的行为组合起来,我们可选择地加载需要的指令并在父指令链中进行查找。
      没有前缀
      如果没有前缀,指令将会在自身所提供的控制器中进行查找,如果没有找到任何控制器(或具有指定名字的指令)就抛出一个错误。
    2. 在自定义Angular指令时。

      举个简单的例子,假如我们现在需要编写两个指令,在linking函数中有很多重合的方法,为了避免重复,我们可以将这个重复的方法写在第三个指令的 controller中,然后在另外两个需要的指令中require这个拥有controller字段的指令,最后通过linking函数的第四个参数就可以引用这些重合的方法。

    3. var app = angular.modeule('myapp',[]);  
    4. app.directive('common',function(){  
    5.     return {  
    6.     ...  
    7.     controller: function($scope){  
    8.         this.method1 = function(){  
    9.         };  
    10.         this.method2 = function(){  
    11.         };  
    12.     },  
    13.     ...  
    14.     }  
    15. });  
    16.   
    17. app.directive('d1',function(){  
    18.     return {  
    19.     ...  
    20.     require: '?^common',  
    21.     link: function(scope,elem,attrs,common){  
    22.         scope.method1 = common.method1;  
    23.         ..  
    24.         },  
    25.     ...  
    26.     }  
    27. });  
  • 相关阅读:
    HanTTS简单文档
    一张包含所有颜色的图片
    shiro整合SpringMVC基于xml
    设计模式-享元模式
    关于volatile关键字实现的个人理解
    重量级锁
    轻量级锁
    偏向锁
    Seata概念的总结
    苹果手机怎么把资源库的APP放到桌面
  • 原文地址:https://www.cnblogs.com/dianzan/p/7284466.html
Copyright © 2020-2023  润新知