首页 > angular 的指令参数如何理解link

angular 的指令参数如何理解link

function link(scope, iElement, iAttrs, controller) { ... }

谁能够举个例子来说说明一些,angular的指令中attr具体是指哪里吗?

下面的attrs.data这中的data如何获取,或者设置在哪里?在<demo></demo>如何写

app.directive('demo',function(){

return{
        
       template: '<div></div>',
        link : function(scope, element, attrs){            
            if($.trim(attrs.data).length>0){
            
            
            }
        },
       }

}
)



html:

<demo></demo>

link函数的执行时机为angular编译此模板之后。4个参数:

  1. scope 当前directive的作用域,是否独立由scope参数决定

  2. element 当前directive的dom element 用angular.element(element)包裹以后形成jqlite/jquery对象

  3. attrs directive对应的属性。举例的话

<demo data='some data'></demo>

中attrs.data 就是'some data' 是写死的,如果想绑定的话必须独立作用域。

  1. controller 被require进来的directive所提供的方法, 如果require了多个, controller将会是一个数组。

【热门文章】
【热门文章】