JavaScript中的简单可观察双向数据绑定

时间:2015-05-16 17:12:15

标签: javascript jquery observable 2-way-object-databinding

我知道很多大牌MVC,M **风格的JavaScript框架允许与Observables进行双向绑定。

如果我的意思:

  • 更新DOM输入字段,它还将更新一个JavaScript对象变量,该变量也可以通过AJAX请求保存到服务器。
  • 如果我更新JavaScript对象变量,它还会更新DOM文本字段。

当我学习JavaScript时,我希望跳过大名称库并学习如何以最基本的原始JavaSript形式执行此操作。

任何人都可以在不使用BackboneJS,Knockout,Angular等库的情况下提供快速易懂的演示功能吗?

jQuery是可以接受的。

我很感激这一课,请帮助。

1 个答案:

答案 0 :(得分:0)

这在每个框架中都是不同的。

Angular例如保存范围内的每个变量。迭代范围变量并将值与先前的变量进行比较,如果有变化,则将其执行到DOM。

在他们调用摘要周期时进行此检查。如果一个周期结束,则再次调用,直到观察到每个变量为止。与上一个周期中的相同。您还可以向此“观察者”添加对象或变量。

Angular保持视图的最新状态,每当有什么东西可以改变观察到的内容时调用这个摘要。变量,如http调用,用户交互......但是,例如,如果从angular(控制台)更改变量之外的变量,则不会对DOM执行变量更改。您必须手动调用摘要周期才能执行此操作。

在HTML5中,使用Object.observe会更容易,但目前市场上的每个浏览器都不支持它。

希望我能帮忙