在angular.js美元美元美元看消化双向绑定的方法探讨应用

在angular.js美元美元美元看消化双向绑定的方法探讨应用
在Angular.js,双向绑定。
将视图直接转换为数据,以及如何将数据的变化实时地通知到视图,以及如何做到这一点,这是多么神奇的功能

这是由于范围内的3个重要方法造成的:

看美元

为消化

为申请
他们之间有什么区别,让我们来介绍一下:

看美元

这是侦听范围上数据的侦听器。

方法显示
$scope.$watch ('parameter', function (newValue, oldValue) {
逻辑
})
在上面,我们创建了一个监听器。

参数是$对象范围内的对象(或对象的属性)。注意,这是字符串形式。

如果你想去听scope.name美元财产。
美元美元范围。看('name',功能(价值、属性的旧值){
逻辑
})
如代码所示,名称需要引号。

参数后跟回调函数,回调函数参数返回监视的属性、更改的新值、更改前的旧值。

为消化
他负责检查范围内的数据是否已更改。如果属性发生变化,它会立即通知这个属性的侦听器($注册侦听器)、触发器侦听器和执行回调函数。

为申请
这种方法非常类似于摘要,而摘要检查范围内的所有数据。

为将相当于检查在rootscope所有的数据,他会检查所有的数据,从父到子。

申请(rootscope美元美元。美元消化)(= =)

$()方法有两种形式。
第一种方法是接受函数作为参数。

这触发$摘要函数并在一个参数中执行函数。

第二类不接受任何参数。

这只会触发一个$ $父级到分段的循环。

而不是直接消化美元在Angular.js,而不是使用美元美元()的应用范围。

我没有设置监视器,为什么视图和数据可以在两个方向上绑定

例如,一个文本

事实上,事实上$范围对象具有一个属性名称,对应于上述双向绑定的视图。
如何实施

事实上,当我们定义NG模型名称或NG或name或{ }时

在这一点上,angular.js自动设置一个听众对美元模型名称属性范围:
美元美元范围。看('name',功能(价值、属性的旧值){
监视name属性中的更改
});
原来,angular.js帮我们自动创建一个侦听器,所以这个属性和scope.name美元数据会实时。

当然,有时候你会发现数据已经改变了。但是UI不刷新,是双向绑定吗

不,
只有当$范围模型遍历摘要循环时,数据才返回。

例如,异步调用的方法,通过callbac返回的数据

例如,你设置一个定时触发setTimeout,然后修改模型数据

总之,遗漏了范围模型的摘要循环,导致未通知UI刷新新数据的模型。

你怎么处理这样的问题

我们必须手动调用摘要以循环检查数据。

正如我们上面所说的,不是直接调用摘要方法,而是手动调用$应用程序方法来间接地触发摘要循环。

如下:
setTimeout(){()函数(
一个布外套;
$范围;
},2000);
问题是,现在是手动调用应用程序方法的时候了。

到目前为止,angular.js自动实现了美元的申请()的指导和服务的一部分的方法。

例如,NG单击、NG模型、超时服务、HTTP服务等。
通话结束后,angular.js自动帮助我们打电话申请()美元实现双向数据绑定。
免责声明:本网信息来自于互联网,目的在于传递更多信息,并不代表本网赞同其观点。其原创性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容、文字的真实性、完整性、及时性本站不作任何保证或承诺,并请自行核实相关内容。本站不承担此类作品侵权行为的直接责任及连带责任。如若本网有任何内容侵犯您的权益,请及时联系我们,本站将会在24小时内处理完毕。
相关文章
返回顶部