Rumah > hujung hadapan web > tutorial js > js如何实现单向绑定(附代码)

js如何实现单向绑定(附代码)

不言
Lepaskan: 2018-07-17 17:30:01
asal
2020 orang telah melayarinya

这篇文章主要介绍了关于js如何实现单向绑定(附代码),有着一定的参考价值,现在分享给大家,有需要的朋友可以参考一下

<!DOCTYPE html>
<html lang="en">

<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <meta http-equiv="X-UA-Compatible" content="ie=edge">
  <title>Document</title>
</head>

<body>
  <input type="text" id="a">
  <span id="b"></span>
  <script>
    // var obj = {};
    // Object.defineProperty(obj,"hello",{
    //   set: () => {
    //     console.log("get方法被调用");
    //   },
    //   get: (val) => {
    //     console.log("se方法被调用"+val);
    //   }
    // })
    let obj = {};
    //Object.defineProperty(obj, prop, descriptor)
    // obj 要在其上定义属性的对象。
    // prop 要定义或修改的属性的名称。
    // descriptor 将被定义或修改的属性描述符。
    Object.defineProperty(obj, &#39;hello&#39;, {    //这里定义obj.hello为完成修改的属性
      set: (newVal) => {                     //当obj.hello的属性发生变化,就会以参数传进来 
        document.getElementById(&#39;a&#39;).value = newVal;    //set触发给a值同时把值给b实现绑定
        document.getElementById(&#39;b&#39;).innerHTML = newVal;
        obj.hello
      },
      get: ()=> {
        console.log("hahahaah");  
      }
    });
    //addEventListener() 方法用于向指定元素添加事件句柄。
    //element.addEventListener(event, function, useCapture)
    //event 所有 HTML DOM 事件
    //function 指定事件触发时执行的函数。
    //useCapture 指定事件是否在捕获或冒泡阶段执行。
    document.addEventListener(&#39;keyup&#39;, (e) => { //监听键盘的按键松开的事件
      console.log(e);
      obj.hello = e.target.value; //将监听到了变化的值给obj.hello,让他触发set属性
    })
  </script>
</body>

</html>
Salin selepas log masuk

相关推荐:

js实现双向数据绑定的方法

vue.js的双向绑定详解

Atas ialah kandungan terperinci js如何实现单向绑定(附代码). Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Label berkaitan:
sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan