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("点击购买")            })        }*/    }});
时间: 2024-10-12 15:23:20

angular js 中conpile与link应用与区别的相关文章

Angular.js中处理页面闪烁的方法详解

Angular.js中处理页面闪烁的方法详解 前言 大家在使用{{}}绑定数据的时候,页面加载会出现满屏尽是{{xxx}}的情况.数据还没响应,但页面已经渲染了.这是因为浏览器和angularjs渲染页面都需要消耗一定的时间,这个间隔可能很小,甚至让人感觉不到,这种情况一切正常,但这个时间也可能很长,这时候用户可能会看到满屏尽是{{xxxx}}.这种情况被叫做"Flash Of Unrendered Content (FOUC)(K)?and is always unwanted.".

angular.js 中同步视图和模型数据双向绑定,$watch $digest $apply 机制

Angular.js 中的特性,双向绑定. 让视图的改变直接反应到数据中,数据的改变又实时的通知到视图,如何做到的? 这要归功于 scope 下面3个重要的方法: $watch $digest $apply 他们的区别是什么,我们来介绍下: $watch 这是一个监听 scope 上数据的监听器 方法说明: $scope.$watch('参数',function(newValue,oldValue){ //逻辑处理 }) 上面我们就是创建了一个监听器. ‘参数’ 就是$scope对象下的一个对象

Angular.js中的指令——易懂全解析

<span style="font-family: Arial, Helvetica, sans-serif; background-color: rgb(255, 255, 255);"> </span><span style="font-family: Arial, Helvetica, sans-serif; background-color: rgb(255, 255, 255);">angular.js中,指令是最基础的

Angular.js 中 copy 赋值与 = 赋值 区别

转自st.gg Angular.js 中 copy 赋值与 = 赋值 区别 为什么用 $scope.user = $scope.master; $scope.master 会跟着 $scope.user 改变?angular.copy 和 = 号赋值有什么区别呢?新手还没有搞懂,请教各位了. <!DOCTYPE html> <html> <script src= "http://apps.bdimg.com/libs/angular.js/1.3.9/angular

angular js中的directive

angular js中的自定义指令 自定义指令return如下指令定义对象: restrict:restrict约束自定义指令的使用形式,取值有A(属性),E(元素),C(类),M(注释) template:该属性指定angular js指令被替换为html模板 scope:scope:true 表示创建一个作用域,该作用域继承于父作用域(即ng-controller控制的作用域), scope:{} 创建一个完全孤立的作用域,不会继承父作用域的任何数据 scope:{"@"} 创建一

js中callback.call()和callback()的区别

js中callback.call()和callback()的区别在js中callback.call()和callback() 有什么区别,举个例子:function a(){alert('hello!');}function b(callback){callback();}function c(callback){callback.call();}function test(){b(a);c(a);}在test函数中,b和c的效果是一样的,都执行了回调函数a.这两种用法有什么区别呢? -----

JS中的setTimeout和setInterval的区别

学了许久的javascript,发现其中非常常用的两个函数,就是setInterval和setTimeout函数,对这两个函数的理解,有时觉得很模糊,经过多次的试验,终于对它有了比较深入的了解.定义,setInterval()-- 间隔指定的毫秒数不停地执行指定的代码.setTimeout,延迟两秒调用函数,这个定义非常的简单,但是它并不像字面意思上那么的简 很多人都觉得这两个方法差不多,但是,实际上,他们差的很远呢     因为setTimeout(表达式,延时时间)在执行时,是在载入后延迟指

js中style,currentStyle和getComputedStyle的区别

js中style,currentStyle和getComputedStyle的区别 MarysMa 在js中用xx.style.marginTop是无法获取写在css或<sytle>标签中的margin-top之类的样式值(包括width,height等). 这就是style属性的限制: style :只能获取元素的内联样式,内部样式和外部样式使用style是获取不到的.(内联样式: body中标签里用style直接写的样式.) currentStyle :可以弥补style的不足,但是只适用

JS中三目运算符和if else的区别分析与示例

本文是通过示例详细分析了JS中三目运算符和if else的区别,是篇非常不错的文章,这里推荐给大家. 今天写了一个图片轮播的小demo,用到了判断 先试了一下if else,代码如下: 复制代码代码如下: if(n >= count-1){n =0;}else{n ++;} 随后代码写完了,准备优化一下代码,将此段改成了三目运算符的写法 复制代码代码如下: n = n >= (count-1) ? n=0 : n++ 结果完全不同 随后研究了一下这两者的区别,总结为一句话:三目运算有返回值,i