angularjs - 两种方式数据绑定(bind)和 react 性有什么区别?

标签 angularjs data-binding ember.js meteor reactive-programming

当我关注 angular 和 ember.js 的一些 tuts 时,我遇到了术语双向数据绑定(bind)。 UI 上显示的数据与数据库绑定(bind),对其中一个的任何更改都会快速传播到另一个。当我开始学习meteor.js 时,我遇到了术语“ react 性”,这对我来说与双向数据绑定(bind)具有相同的意义。你能告诉我这两个术语之间的根本区别吗?

最佳答案

react 性实际上比数据绑定(bind)更通用。通过 react 性,您可以以非常简单的方式实现数据绑定(bind),例如

var myAwesomeData = "some data";
var myAwseomeDependency = new Tracker.Dependency();    

var getData = function () {
  myAwesomeDependency.depend();
  return myAwesomeData;
};

var setData = function(value) {
  if (value !== myAwesomeData) {
    myAwesomeData = value;
    myAwesomeDependency.changed();
  }
}

现在,每次getData例程在 computation 内调用,所以基本上在Tracker.autorun内环境,它被重新计算。默认情况下 meteor 的集合 API 被实现为响应式的,因此每次从您的数据库中获取一些数据时,您可以确保它在数据更改时立即更新。

另请注意,您可以在没有任何数据库或值的情况下使用上述 react 模式,例如,您可以触发和监视事件、状态等。

关于angularjs - 两种方式数据绑定(bind)和 react 性有什么区别?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20193624/

相关文章:

javascript - 使用应用程序状态 js 和 View 在 Angular js url 上传递两个参数

javascript - PubNub AngularJS 未定义函数 ngSubscribe

html - Protractor :sessionStorage 变量

android - android中的 ionic 通知

wpf - 这个 DataGridComboBoxColumn 绑定(bind)语法有什么问题?

javascript - Ember.js - 多个复选框 - 将值传递给 queryParam

javascript - Ember.Js 标题重复

java - 是否可以使用 DOM 从 XML 文件创建对象?

c# - Richtextbox 键入时的数据绑定(bind)问题

ember.js - 您可以使用两个HTML模板,例如Handlebars和Jinja