主要通过发布-订阅者模式实现的
啥话也不用说 上代码!!!
(仅供本人学习使用)
<body>
<input type="text" id="input" placeholder="请输入吧">
<div id="app">{{name}}</div>
<script>
let data = {
name:""
}
let tem = {
name:""
}
function init(){
let inputDOM = document.getElementById("input")
let divDOM = document.getElementById("app")
inputDOM.value = data.name
divDOM.innerText = data.name
}
init();
Object.defineProperty(data, "name", {
enumerable:true,
set(newVal){
tem.name = newVal;
init();
},
get(){
return tem.name
}
})
let inputValue = document.getElementById("input")
inputValue.addEventListener("input", function (ev) {
data.name = ev.target.value
})
</script>
</body>