zoukankan      html  css  js  c++  java
  • Vue的单向绑定和双向绑定

    1、单向绑定

    单向数据绑定的实现思路:

    ① 所有数据只有一份

    ② 一旦数据变化,就去更新页面(只有data-->DOM,没有DOM-->data)

    ③ 若用户在页面上做了更新,就手动收集(双向绑定是自动收集),合并到原有的数据中。

    单项绑定代码如下: 

    <!DOCTYPE html

     <html

     <head></head

     <body>

      <div id="app">  

           {{message}}  </div>  <script>  

            var app = new Vue({  

                el: '#app',  

                data: {  

                    message: ''  

                }  

            });  

    </script>  

    </body

     </html>  

    2、双向绑定

    数据的双向绑定是vue实现的一大功能。

    使用v-model指令,实现视图和数据的双向绑定。

    所谓双向绑定,指的是vue实例中的data与其渲染的DOM元素的内容保持一致,无论谁被改变,另一方会相应的更新为相同的数据。这是通过设置属性访问器实现的。

    v-model主要用在表单的input输入框,完成视图和数据的双向绑定。

    v-model只能用在<input>、<select>、<textarea>这些表单元素上。

    双向绑定的缺点:不知道data什么时候变了,也不知道是谁变了,变化后也不会通知,当然可以watch来监听data的变化,但这复杂,还不如单向绑定。

     双项绑定代码如下: 

    <!DOCTYPE html

     <html

     <head>

    </head

     <body>  

    <div id="app">

      <input type="text" v-model="message">  

    <p>{{message}}</p>

      </div>  

    <script>  

            var app = new Vue({  

                el: '#app',  

               data: {  

                    message: ''  

               }  

            });  </script>

      </body

     </html>  

    多多指教,我还是前端小生
  • 相关阅读:
    WPF 组织机构摄像机树 全量加载 大数据量 分页加载摄像机节点
    vue3 自定义指令(简易版防抖、节流)
    测试Writer
    The blog In The cnblogs!
    分割
    coeLmiGMmW
    js 之 setTimeout 0 分析
    vue 组件 之 注册 及 组件内data的使用
    Js/es for(let i in Obj)效率分析及优化
    vue.js 表单控件 输入绑定 vmodel的使用
  • 原文地址:https://www.cnblogs.com/yangslin/p/8982196.html
Copyright © 2011-2022 走看看