vue如何實現雙向資料繫結?

2021-09-27 15:29:03 字數 666 閱讀 4485

vue中實現資料繫結的乙個重要點:

"text" id=

"a"/

>

"b">

<

/span>

var obj =

object.

defineproperty

(obj,

'test',}

);// 需要新增keyup事件去監聽,不然就不知道已經發生了改變。

document.

addeventlistener

('keyup'

,function

(e))

<

/script>

那麼object.defineproperty()底層提供了兩個api,乙個是get,乙個是set。

當我們給obj.test屬性賦值時,會發現set函式觸發了,那這就和我們去手動新增監聽事件不一樣了,當我們改變obj.test的值時,會自動觸發set。而我們去獲取obj.test的值時,也會自動觸發get方法。

可以看到,當我們在控制台改變了obj.test的值時,會自動觸發set事件,從而實現了資料繫結。

Vue如何實現資料雙向繫結

說明 index.html lang en head p p v text msg p v text car.color p v html msg p v html car.color p type text v model msg v on click clickfn 點我button div...

vue 資料雙向繫結實現

之前每件事都差不多,直到現在才發現差很多。現在才發現理清一件事的原委是多麼快樂的一件事,我們共同勉勵。紙上得來終覺淺,絕知此事要躬行 懶得扯淡,直接正題 ps 文章略長。model view編譯器 其基於 訂閱者 發布者模式,簡單的講就是訂閱者訂閱資料,一旦訂閱的資料變更過後,更新繫結的view檢視...

vue實現雙向資料繫結

object.defineproperty 方法會直接在乙個物件上定義乙個新屬性,或者修改乙個物件的現有屬性,並返回這個物件。object.defineproperty 方法有三個引數 引數 功能 作用 obj 要修改或定義key值的物件 key 對應obj物件的裡面某有已有或要修改的屬性 opti...