vue實現(xiàn)簡單數(shù)據(jù)雙向綁定
本文實例為大家分享了vue實現(xiàn)簡單數(shù)據(jù)雙向綁定的具體代碼,供大家參考,具體內(nèi)容如下
這里是簡單的實現(xiàn),有助于新手理解消化,當然vue要實現(xiàn)雙向數(shù)據(jù)代理不可缺少,期待后續(xù)在更新
vue雙向數(shù)據(jù)綁定
-> Object.defineProperty() //2.0核心語法
-> 數(shù)據(jù)代理
-> 雙向綁定
-> 訂閱發(fā)布模式
compile-> 模版解析 (template模版 html 指令 {{表達式}})
observer-> 觀察者(訂閱發(fā)布) data里的所有的屬性進行 數(shù)據(jù)劫持 數(shù)據(jù)代理
watcher-> 監(jiān)聽 data里的所有的屬性被改變之后觸發(fā)
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8" /> <meta http-equiv="X-UA-Compatible" content="IE=edge" /> <meta name="viewport" content="width=device-width, initial-scale=1.0" /> <title>Document</title> </head> <body> <input type="text" id="ipt" /> <p id="lc"></p> </body> </html>
<script> //獲取頁面元素 var ipt = document.getElementById("ipt"); var ps = document.getElementById("lc"); var obj = { name: "" }; //vue雙向數(shù)據(jù)綁定的核心原理應(yīng)用 Object.defineProperty(obj, "name", { get() { return ipt.value; }, set(newval) { ipt.value = newval; ps.innerHTML = newval; }, }); //監(jiān)聽input中的數(shù)據(jù)變化并賦值p標簽 ipt.addEventListener("keyup", function() { ps.innerHTML = ipt.value; }); </script>
效果展示:
以上就是本文的全部內(nèi)容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
vue2.x版本中computed和watch的使用及關(guān)聯(lián)和區(qū)別
這篇文章主要介紹了vue2.x版本中computed和watch的使用及關(guān)聯(lián)和區(qū)別,文章圍繞主題展開詳細的內(nèi)容介紹,需要的小伙伴可以參考一下2022-07-07vue?el-table中使用el-select選中后無效的解決
這篇文章主要介紹了vue?el-table中使用el-select選中后無效的解決方案,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2022-08-08electron-vite工具打包后如何通過內(nèi)置配置文件動態(tài)修改接口地址
使用electron-vite?工具開發(fā)項目打包完后每次要改接口地址都要重新打包,對于多環(huán)境切換或者頻繁變更接口地址就顯得麻煩,這篇文章主要介紹了electron-vite工具打包后通過內(nèi)置配置文件動態(tài)修改接口地址實現(xiàn)方法,需要的朋友可以參考下2024-05-05