angular指令中@,=,&的区别】的更多相关文章

针对独立 scope,可以通过在对象中声明如何从外部传入参数.有以下三种绑定策略: @ - 使用 DOM 属性值单项绑定到指令 scope 中.此时绑定的值总是一个字符串,因为 DOM 的属性值是一个字符串. <div my-directive age="26"></div> scope: { age: '@' } = - 在父 scope 和指令 scope 之间建立双向绑定. <div my-directive age="age"&…
当directive中的scope设置为一个对象的时候,该指令就有了一个独立的作用域,AngularJS提供了一种绑定策略用于隔离作用域和外部作用域进行通信. 1.@(or @attr) 使用@符号可以进行单项的数据绑定,取值总是一个字符串,所以要用{{}}. 另外这也是一个单向的绑定,外部数据改变会反应到内部,但是内部数据变数据变化,外部不会变. 属性要用-连接,scope中写它的驼峰格式. 如果没有通过@attr指定属性名称,那么本地名称要与DOM属性的名称一致. <!DOCTYPE htm…
在这篇文章中 angular学习笔记(三十)-指令(10)-require和controller 说到了通过require属性和controller参数来让指令与指令之间互相交互. 本篇主要介绍的是指令与ngModel指令的交互.也就是说,ngModel指令虽然是内置的,但它也有自己的controller属性,其它指令也可以通过require来得到ngModel指令的controller属性的实例来与ngModel指令进行交互. ngModelController用在什么场合呢?我们知道,ngM…
最近在学习angularJS指令的时候,对指令对象中require属性和transclude属性同时设置为true比较疑惑,于是自己动手测试一下具体差异 index.html: <simple> <div>Inner content</div> </simple> 自定义 simple指令 .directive("simple", function(){ return { restrict: "E", //transc…
指令模板选项有complie和link两个字段,两者之间存在如下关系: 当compile字段存在时,link字段将被忽略,compile函数的返回值将作为link字段. 当compile不存在,link字段存在时,angular通过这样directive.compile = valueFn(directive.link);包装一层,使用用户定义的link字段. 而link分为preLink和postLink两个阶段,从link字段或者compile函数的返回值来看: 如果是函数,那么这样的lin…
1.指令作用域中的@ 作用是把当前属性作为字符串传递. html: <div ng-controller="MyCtrl"> <drink water="{{pureWater}}"></drink> </div> js: var myModule = angular.module("MyModule", []); myModule.controller('MyCtrl', ['$scope', f…
转自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…
scope 有三个参数 true.false.{} scope 默认是 false,当 scope设置为true时,会从父作用域继承并创建一个新的作用域对象, 按照true .false的反向思维,我就理解为scope不设置,或者设置为false的时候,就不从父作用域继承(理解错误主要就是因为这句话). 这里的不从父作用域继承可以分为两种情况 1.创建一个新的作用域对象,但不继承父作用域  (创建.不继承) 2.压根就不创建新的作用域对象,直接跟父作用域共享一个作用域,也就谈不到继承了. (不创…
Angular JS的强大功能就在于其可以自定义很多指令,现在就指令做一下详细的剖析. 一个Angular js 指令(directive)需要指定一个唯一的名字(myDirective)和一个函数,其中返回一个对象,该对象包含该指令应有的一些行为,具体参见如下所有的属性. angular.module('myApp', []) .directive('myDirective', function() { return { restrict: String, priority: Number,…
http://www.jb51.net/article/58229.htm 通常大家在使用ng中的指令的时候,用的链接函数最多的是link属性,下面这篇文章将告诉大家complie,pre-link,post-link的用法与区别. angularjs里的指令非常神奇,允许你创建非常语义化以及高度重用的组件,可以理解为web components的先驱者. 网上已经有很多介绍怎么使用指令的文章以及相关书籍,相互比较的话,很少有介绍compile与link的区别,更别说pre-link与post-…