下面我就為大家分享一篇js最簡單的雙向綁定實例講解,具有很好的參考價值,希望對大家有幫助。
把程式碼複製放到頁裡面運行看看效果就好了
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Title</title> </head> <body> <input type="text" id="myinput" > <script> function watch(obj,key,callback) { var old = obj[key]; Object.defineProperty(obj,key,{ set:function(val){ var oldVal = old; old = val; callback(val,oldVal,this); }, get:function(){ return old; } }); } var input = document.getElementById("myinput"); var obj = {}; watch(obj, "input",function (val) { input.value = val; console.log("这里是不管view层,还是module层修改后的回调,最后设置的值是"+val); }); input.onkeyup = function () { obj.input = input.value; }; </script> </body> </html>
##程式碼測試
#修改了input內的值,會看到控制台印出新的值在控制台修改obj.input的值,input框內的值也會跟著改變,也會觸發事件,取得新價值上面是我整理給大家的,希望今後會對大家有幫助。 相關文章:以上是在js中如何實現雙向綁定的詳細內容。更多資訊請關注PHP中文網其他相關文章!