首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >angularjs中单向绑定与双向绑定的区别

angularjs中单向绑定与双向绑定的区别
EN

Stack Overflow用户
提问于 2016-07-28 10:25:38
回答 3查看 53.2K关注 0票数 28

你能用一个例子解释一下One-way Data BindingTwo-way Data Binding之间的区别吗?我们使用了哪种情况?

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2016-07-28 10:50:06

单向数据绑定

ng-bind有单向数据绑定(Model($scope) --> View),例如。ng-bind="myText"{{ myText }}

它显示插入到HTML中的作用域值$scope.myText,其中myText是范围变量名。(例如,模型->视图)

双向数据绑定

ng-model主要放在表单元素中,并具有双向数据绑定

(Model($scope) --> View and View --> Model($scope))

例如:<input name="firstname" ng-model="firstname"/>

当您与表单元素firstname交互时,ng-model将与$scope.firstname交互,并通过Digest周期自动更新相应的视图。(例如,模型视图和视图->模型)

一次性数据绑定

新语法在任何值(单向或双向)之前添加::,这将声明我们想要one time binding

代码语言:javascript
复制
<p>
  {{ ::firstname }}
</p>

一旦firstname被定义并包含一个值,AngularJS将对其执行unbind操作,并且任何模型更新都不会影响视图。

例如:使用ng-if

代码语言:javascript
复制
<div ng-if="::user.firstname"></div>

使用ng类

代码语言:javascript
复制
<div ng-class="::{ 'active': user.firstname }"></div>

当使用重复ng-时

代码语言:javascript
复制
<ul>
  <li ng-repeat="user in ::users"></li>
</ul>
票数 34
EN

Stack Overflow用户

发布于 2017-05-17 19:15:01

绑定的一种方式是将数据从模型绑定到视图。另外,双向绑定是将数据从模型绑定到视图,将视图绑定到模型。

票数 11
EN

Stack Overflow用户

发布于 2018-12-23 23:55:50

UI中的数据绑定是将UI字段绑定到数据模型。数据绑定有两种方法:单向数据绑定和双向数据绑定

单向数据绑定->模型是唯一的真理来源。无论UI上发生了什么,都会触发一条消息到模型以更新部分数据。因此,数据是单向流动的,这变得很容易理解。

双向数据绑定-> UI字段中的任何更改都会更新模型,而模型中的任何更改都会更新UI字段。

单向数据绑定是更好的方法,因为数据是单向流动的。此外,只有model有权更改应用程序状态。

票数 8
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/38626156

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档