以下为简易版的双向绑定示例:
var view = document.getElementById("test");
var data = {};
var i = 0;
Object.defineProperty(data, "b", {
// 监听所有的设置操作
set: function (newValue) {
//当data.b的值改变的时候更新#test的视图
// view.textContent = newValue;
view.innerHTML = newValue;
},
get: function () { }
});
setInterval(function () {
i++;
data.b = "data.b的值更新了,我要更新视图" + i;
// data["b"] = "data.b的值更新了,我要更新视图" + i;
}, 2000);