欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

輕松理解vue的雙向數(shù)據(jù)綁定問題

 更新時間:2017年10月30日 09:58:15   作者:文宗  
Vue是當前很火的一款MVVM的輕量級框架,它是以數(shù)據(jù)驅(qū)動和組件化的思想構(gòu)建的。因為它提供了簡潔易于理解的api,使得我們很容易上手。這篇文章給大家介紹了vue雙向數(shù)據(jù)綁定問題,感興趣的朋友一起看看吧

Vue介紹

Vue是當前很火的一款MVVM的輕量級框架,它是以數(shù)據(jù)驅(qū)動和組件化的思想構(gòu)建的。因為它提供了簡潔易于理解的api,使得我們很容易上手。

Vue與MVVM

如果你之前已經(jīng)習(xí)慣了用jQuery操作DOM,學(xué)習(xí)Vue.js時請先拋開手動操作DOM的思維,因為Vue.js是數(shù)據(jù)驅(qū)動的,你無需手動操作DOM。Vue以數(shù)據(jù)為驅(qū)動,將自身的Dom元素與數(shù)據(jù)進行綁定,一旦創(chuàng)建綁定,Dom和數(shù)據(jù)保持同步。

雙向綁定

主流雙向數(shù)據(jù)綁定實現(xiàn)原理

臟值檢測 : 這是AngularJS實現(xiàn)雙向數(shù)據(jù)綁定的方式。 原理是 當數(shù)據(jù)進行變更的時候?qū)λ蠱odel和View的綁定關(guān)系進行一次檢查,識別是否有數(shù)據(jù)進行了變更,如果有變化則進行處理,由于可能進一步引發(fā)其他數(shù)據(jù)的改變,會再次循環(huán)這個過程,知道沒有數(shù)據(jù)的變化之后。發(fā)送數(shù)據(jù)到視圖重新渲染。 可想而知,這樣的方式性能不高。

單向數(shù)據(jù)綁定

指的是我們先把模板寫好,然后把模板和數(shù)據(jù)(數(shù)據(jù)可能來自后臺)整合到一起形成HTML代碼,然后把這段HTML代碼插入到文檔流里面。
單向數(shù)據(jù)綁定缺點:HTML代碼一旦生成完以后,就沒有辦法再變了,如果有新的數(shù)據(jù)來了,那就必須把之前的HTML代碼去掉,再重新把新的數(shù)據(jù)和模板一起整合后插入到文檔流中。 簡單的來說就是DOM操作直接改變

數(shù)據(jù)數(shù)據(jù)雙向

數(shù)據(jù)模型(Module)和視圖(View)之間的雙向綁定。

用戶在視圖上的修改會自動同步到數(shù)據(jù)模型中去,同樣的,如果數(shù)據(jù)模型中的值發(fā)生了變化,也會立刻同步到視圖中去。雙向數(shù)據(jù)綁定的優(yōu)點是無需進行和單向數(shù)據(jù)綁定的那CRUD(Create,Retrieve,Update,Delete)操作雙向數(shù)據(jù)綁定最經(jīng)常的應(yīng)用場景就是表單了,這樣當用戶在前端頁面完成輸入后,不用任何操作,我們就已經(jīng)拿到了用戶的數(shù)據(jù)存放到數(shù)據(jù)模型中了。

如何使用js達到雙向數(shù)據(jù)綁定

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <title>Title</title>
</head>
<body>
<input type="text" id="userName">
<br>
<span id ="uName"></span>
<script>
  var obj={
    pwd:"1234"
  };
  //主要使用到了get和set方法,最為關(guān)鍵
  Object.defineProperty(obj,"userName",{
    get:function(){
      console.log('get init');
    },
    set:function(val){
      console.log("set init");
      document.getElementById("uName").innerText=val;
      document.getElementById("userNmae").value=val;
    }
  });
  document.getElementById("userName").addEventListener("keyup",function(event){
    obj.userName=event.target.value;
  }
  )
</script>
</body>
</html>

運行上述的dome,可以使用控制臺,obj.username=123賦值,會自動觸發(fā)set方法。若我們在控制臺使用obj.username拿值可以觸發(fā)get方法,這也就是vue的雙向數(shù)據(jù)綁定的核心點。

總結(jié)

以上所述是小編給大家介紹的輕松理解vue的數(shù)據(jù)雙向綁定問題,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復(fù)大家的。在此也非常感謝大家對腳本之家網(wǎng)站的支持!

相關(guān)文章

  • Vue實現(xiàn)點擊顯示不同圖片的效果

    Vue實現(xiàn)點擊顯示不同圖片的效果

    這篇文章主要為大家詳細介紹了Vue實現(xiàn)點擊顯示不同圖片的效果,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2019-08-08
  • 一文搞懂Vue2中的組件通信

    一文搞懂Vue2中的組件通信

    這篇文章主要為大家介紹了Vue2中的組件通信方式,文中通過示例進行了詳細的介紹,對我們學(xué)習(xí)Vue有一定的幫助,感興趣的小伙伴可以了解一下
    2022-07-07
  • 關(guān)于下拉類型多選組件Vue-Treeselect(鍵名轉(zhuǎn)換)

    關(guān)于下拉類型多選組件Vue-Treeselect(鍵名轉(zhuǎn)換)

    這篇文章主要介紹了關(guān)于下拉類型多選組件Vue-Treeselect(鍵名轉(zhuǎn)換),具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-07-07
  • 詳解vue模擬加載更多功能(數(shù)據(jù)追加)

    詳解vue模擬加載更多功能(數(shù)據(jù)追加)

    本篇文章主要介紹了vue模擬加載更多功能(數(shù)據(jù)追加),小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-06-06
  • Vue2與Vue3中Ref綁定元素方式

    Vue2與Vue3中Ref綁定元素方式

    這篇文章主要介紹了Vue2與Vue3中Ref綁定元素方式,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2023-11-11
  • vue 實現(xiàn)上傳按鈕的樣式的兩種方法

    vue 實現(xiàn)上傳按鈕的樣式的兩種方法

    這篇文章主要介紹了vue 定制上傳按鈕的樣式的兩種方法,本文結(jié)合示例代碼給大家介紹的非常詳細,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2022-12-12
  • Vant picker選擇器設(shè)置默認值導(dǎo)致選擇器失效的解決

    Vant picker選擇器設(shè)置默認值導(dǎo)致選擇器失效的解決

    這篇文章主要介紹了Vant picker選擇器設(shè)置默認值導(dǎo)致選擇器失效的解決方案,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2023-01-01
  • Vue生命周期與setup深入詳解

    Vue生命周期與setup深入詳解

    Vue的生命周期就是vue實例從創(chuàng)建到銷毀的全過程,也就是new Vue() 開始就是vue生命周期的開始。Vue 實例有?個完整的?命周期,也就是從開始創(chuàng)建、初始化數(shù)據(jù)、編譯模版、掛載Dom -> 渲染、更新 -> 渲染、卸載 等?系列過程,稱這是Vue的?命周期
    2022-09-09
  • VUE學(xué)習(xí)之Element-ui文件上傳實例詳解

    VUE學(xué)習(xí)之Element-ui文件上傳實例詳解

    今天進行了element?文件上傳組件的運用,寫一下心得,下面這篇文章主要給大家介紹了關(guān)于VUE學(xué)習(xí)之Element-ui文件上傳的相關(guān)資料,文中通過實例代碼介紹的非常詳細,需要的朋友可以參考下
    2022-10-10
  • VUE前端導(dǎo)出文件之file-saver插件安裝使用教程

    VUE前端導(dǎo)出文件之file-saver插件安裝使用教程

    這篇文章主要給大家介紹了關(guān)于VUE前端導(dǎo)出文件之file-saver插件安裝使用的相關(guān)資料,file-saver是一個用于保存文件的JavaScript庫,它提供了一種簡單的方式來生成和保存文件,支持各種文件類型,例如文本文件、圖片、PDF等,需要的朋友可以參考下
    2024-05-05

最新評論