angular js 中conpile与link应用与区别

Posted yaomengli

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了angular js 中conpile与link应用与区别相关的知识,希望对你有一定的参考价值。

   link方法是compile抛出来的一个方法

应用

app.directive("thumbNail",function(){
return{
restrict:"ACE",
replace:true,
templateUrl:"../tpl/tpl.html",
compile:function(elem,attrs,transclude){
// dom dom 树的增删改查(此时dom树还未形成)
console.log("编译阶段"); //只打印一次只执行一次
return{
pre:function(scope,elem,attrs,controller){
            //  dom dom 树的增删改查(此时dom树还未形成)实际上也打印了6次 相当于post-link方法


console.log("编译阶段1")
                },
post:function(scope,elem,attrs,controller){ //相当于post-link方法
console.log("链接阶段") //绑定事件与数据(dom树已形成 ) 每个实例都会执行一次
}

}
}
/*link:function(scope,elem,attrs){
console.log(elem);
angular.element(elem).find("a").eq(0).on("click",function(){
alert("加入收藏")
});
angular.element(elem).find("a").eq(1).on("click",function(){
alert("点击购买")
})
}*/
}
});

以上是关于angular js 中conpile与link应用与区别的主要内容,如果未能解决你的问题,请参考以下文章

Angular JS 和 Directive Link 和 $timeout

angularjs link compile与controller的区别详解,了解angular生命周期

Angular JS 面包屑

Angular JS 中 指令详解

angular js的坑

Angular中访问DOM元素的“链接”函数的等价物是啥