富贵资源网 Design By www.hznty.com
把代码复制放到页面里面运行看一下效果就好了
<!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最简单的双向绑定实例讲解就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。
富贵资源网 Design By www.hznty.com
广告合作:本站广告合作请联系QQ:858582 申请时备注:广告合作(否则不回)
免责声明:本站资源来自互联网收集,仅供用于学习和交流,请遵循相关法律法规,本站一切资源不代表本站立场,如有侵权、后门、不妥请联系本站删除!
免责声明:本站资源来自互联网收集,仅供用于学习和交流,请遵循相关法律法规,本站一切资源不代表本站立场,如有侵权、后门、不妥请联系本站删除!
富贵资源网 Design By www.hznty.com
暂无评论...