雙向資料繫結的理解與實現

2021-10-06 11:57:57 字數 913 閱讀 6825

object.defineproperty自己完成乙個雙向繫結

object.defineproperty方法直接在乙個物件上定義乙個新屬性,或者修改乙個已經存在的屬性, 並返回這個物件

value: 設定屬性的值

writable: 值是否可以重寫。true | false

enumerable: 目標屬性是否可以被列舉。true | false

configurable: 目標屬性是否可以被刪除或是否可以再次修改特性 true | false

set: 目標屬性設定值的方法

get:目標屬性獲取值的方法

object.

defineproperty

(user,

"name",,

set:

function

(newvalue)})

settimeout((

)=>

,2000);

var user =

;var defaultname =

'tom'

;var model = document.

queryselector

('#model');

var modeltext = document.

queryselector

('#modeltext');

object.

defineproperty

(user,

'name',,

set:

function

(newval)})

model.

addeventlistener

('keyup'

,function()

)

vue資料的雙向繫結的理解

資料 observer.對資料的屬性進行監聽,如果發生變化,會告訴發布者。發布者 通知訂閱者資料發生變了。發布者會通知訂閱者更新檢視 訂閱者 檢視元素訂閱的資料資訊。data下面的每乙個資料,都會有多個訂閱者。訂閱者的職責 當資料發生變化時,會將與資料相關的元素屬性進行更新 更新檢視 訂閱者與資料的...

怎麼理解vue的資料雙向繫結

指的是我們先把模板寫好,然後把模板和資料 資料可能來自後台 整合到一起形成html 然後把這段html 插入到文件流裡面。單向資料繫結缺點 html 一旦生成完以後,就沒有辦法再變了,如果有新的資料來了,那就必須把之前的html 去掉,再重新把新的資料和模板一起整合後插入到文件流中。簡單的來說就是d...

vue 資料雙向繫結實現

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