当我关注 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/