constmodel=function(state,element){//1.State中的值发生变化,修改input中的值//第一次赋值element.value=state.value//不断截取stateObject.defineProperty(state,'value',{get(){returnelement.value//这里返回element的值,如果写成State会爆栈[不懂]},//中间有一个逗号,否则会报错set(val){element.value=val//就是获取val赋值给input}})//input中的值发生变化,修改State中的数据element.addEventListener('change',function(e){//写的时候,使用element来监控state.value=element.value})}constinput=document.createElement('input')conststate={value:'BFE'}model(state,input)console.log(input.value)//'BFE'state.value='dev'console.log(input.value)//'dev'input.value='BFE.dev'input.dispatchEvent(newEvent('change'))//分发变化事件监听console.log(state.value)//'BFE.dev'参考链接https://bigfrontend.dev/zh/pr...
