2024年06月18日 建站教程
在Vue中,数据监控是通过Object.defineProperty方法实现的。Vue通过劫持数据的getter和setter在内部监控和更新数据。
具体示例如下:
function watch(obj, key, callback) {
var value = obj[key];
Object.defineProperty(obj, key, {
get: function() {
return value;
},
set: function(newVal) {
var oldVal = value;
value = newVal;
callback(newVal, oldVal);
}
});
}
var data = {
message: 'Hello, Vue!'
};
watch(data, 'message', function(newVal, oldVal) {
console.log('数据发生了变化:', newVal, oldVal);
});
本文链接:http://so.lmcjl.com/news/6807/