欧美一区二区三区,国内熟女精品熟女A片视频小说,日本av网,小鲜肉男男GAY做受XXX网站

vue2.0 proxy

錢諍諍2年前9瀏覽0評論

proxy 是 ES6 中的一個新特性,在 Vue 2.0 中也被廣泛應用。在 Vue 中,proxy 主要用于監(jiān)聽響應式數(shù)據(jù)的變化,當數(shù)據(jù)發(fā)生變化時,proxy 會自動觸發(fā)更新視圖。

要理解 Vue 2.0 中的 proxy,首先要了解什么是響應式數(shù)據(jù)。簡單來說,響應式數(shù)據(jù)就是會自動觸發(fā)更新的數(shù)據(jù)。在 Vue 中,我們可以使用new Vue({ data: {...} })來創(chuàng)建響應式數(shù)據(jù)。

當我們使用 Vue 創(chuàng)建響應式數(shù)據(jù)時,Vue 會自動使用 proxy 來監(jiān)聽數(shù)據(jù)的變化。當數(shù)據(jù)改變時,Vue 會自動觸發(fā)更新視圖。

// 創(chuàng)建響應式數(shù)據(jù)
var obj = { foo: 'bar' };
var vue = new Vue({ data: obj });
// 監(jiān)聽數(shù)據(jù)變化
obj.foo = 'baz'; // 觸發(fā)更新視圖

上面的代碼創(chuàng)建了一個響應式數(shù)據(jù),然后修改了數(shù)據(jù)的值,Vue 會自動觸發(fā)更新視圖。

除了使用new Vue({ data: {...} })創(chuàng)建響應式數(shù)據(jù)外,我們也可以使用 Vue 提供的響應式 API,來手動創(chuàng)建響應式數(shù)據(jù)。

// 手動創(chuàng)建響應式數(shù)據(jù)
var data = { foo: 'bar' };
var reactiveData = Vue.observable(data);
// 監(jiān)聽數(shù)據(jù)變化
reactiveData.foo = 'baz'; // 觸發(fā)更新視圖

上面的代碼手動創(chuàng)建了一個響應式數(shù)據(jù),然后修改了數(shù)據(jù)的值,Vue 會自動觸發(fā)更新視圖。

使用 proxy 監(jiān)聽響應式數(shù)據(jù)變化是 Vue 2.0 中的一個新特性。在早期版本的 Vue 中,Vue 使用了 Object.defineProperty 來監(jiān)聽數(shù)據(jù)變化。而在 2.0 中,Vue 使用了更優(yōu)秀的監(jiān)聽方式:proxy。

// 使用 Object.defineProperty 監(jiān)聽數(shù)據(jù)變化
var obj = { foo: 'bar' };
vue.$data = obj;
Object.defineProperty(obj, 'foo', {
get: function() { return this._foo },
set: function(newVal) { 
this._foo = newVal;
vue.$forceUpdate();
}
});
obj.foo = 'baz'; // 觸發(fā)更新視圖

上面的代碼使用了 Object.defineProperty 監(jiān)聽數(shù)據(jù)變化,當數(shù)據(jù)變化時,需要手動觸發(fā)更新視圖。而聰明的 Vue 開發(fā)者在 2.0 中,使用了更優(yōu)秀的監(jiān)聽方式——proxy。

至此,我們已經(jīng)了解了 Vue 2.0 中 proxy 的相關(guān)知識。