最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

vue改變對象或數組時的刷新機制的方法總結

 更新時間:2019年04月24日 09:36:29   作者:yuhehanfeng  
這篇文章主要介紹了vue改變對象或數組時的刷新機制的方法總結,小編覺得挺不錯的,現在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧

Vue數據響應原理

官方的解釋很清晰:

當你把一個普通的 JavaScript 對象傳給 Vue 實例的 data 選項,Vue 將遍歷此對象所有的屬性,并使用 Object.defineProperty 把這些屬性全部轉為 getter/setter。Object.defineProperty 是ES5 中一個無法 shim 的特性,這也就是為什么 Vue 不支持 IE8 以及更低版本瀏覽器的原因。 用戶看不到 getter/setter,但是在內部它們讓 Vue 追蹤依賴,在屬性被訪問和修改時通知變化。這里需要注意的問題是瀏覽器控制臺在打印數據對象時 getter/setter 的格式化并不同,所以你可能需要安裝 vue-devtools 來獲取更加友好的檢查接口。 每個組件實例都有相應的 watcher 實例對象,它會在組件渲染的過程中把屬性記錄為依賴,之后當依賴項的 setter 被調用時,會通知 watcher 重新計算,從而致使它關聯(lián)的組件得以更新。 

總結:

1.數組更改值或者增加刪除值,不會觸發(fā)更新。
2.對象更改值可觸發(fā)更新,增加或者刪除屬性不會觸發(fā)更新。
3.對象數組:數組中的對象更改值會觸發(fā)更新。

一、純數組-------showArr:[true,true]

數組中元素直接賦值,---不觸發(fā)刷新

this.showArr[0]=!this.showArr[0];

數組修改后整體賦值,---不觸發(fā)刷新

var parr=this.showArr;
parr[0]=!parr[0];
this.showArr=parr;

數組重新復制出一份新的,修改后整體賦值,---可觸發(fā)刷新

var parr=this.showArr.slice(0);
parr[0]=!parr[0];
this.showArr=parr;

用$set賦值,---可觸發(fā)刷新

this.$set(this.showArr,0,!this.showArr[0])

二、純對象-------showArr:{'showBool':true}

對象中元素直接賦值,---可觸發(fā)刷新

this.showArr['showBool']=!this.showArr['showBool'];

對象修改后整體賦值,---可觸發(fā)刷新

var parr=this.showArr;
parr['showBool']=!parr['showBool'];
this.showArr=parr;

用$set賦值,---可觸發(fā)刷新

this.$set(this.showArr,'showBool',!this.showArr['showBool']);

三、 對象數組-------showArr:[{'showBool':true},{'showBool':true}]

數組中元素直接賦值,---可觸發(fā)刷新

this.showArr[0]['showBool']=!this.showArr[0]['showBool'];

數組修改后整體賦值,---可觸發(fā)刷新

var parr=this.showArr;
parr[0]['showBool']=!parr[0]['showBool'];
this.showArr=parr;

數組重新復制出一份新的,修改后整體賦值,---可觸發(fā)刷新

var parr=this.showArr.slice(0);
parr[0]['showBool']=!parr[0]['showBool'];
this.showArr=parr;

用$set賦值,---可觸發(fā)刷新

this.$set(this.showArr[0],'showBool',!this.showArr[0]['showBool']);

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。

相關文章

  • 在Vue3中實現拖拽文件上傳功能的過程詳解

    在Vue3中實現拖拽文件上傳功能的過程詳解

    文件上傳是我們在開發(fā)Web應用時經常遇到的功能之一,為了提升用戶體驗,我們可以利用HTML5的拖放API來實現拖拽文件上傳的功能,本文將介紹如何在Vue3中實現這一功能,文中有詳細的代碼示例供大家參考,需要的朋友可以參考下
    2023-12-12
  • vue項目中自動導入svg并愉快的使用方式

    vue項目中自動導入svg并愉快的使用方式

    這篇文章主要介紹了vue項目中自動導入svg并愉快的使用方式,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-11-11
  • Vue使用axios圖片上傳遇到的問題

    Vue使用axios圖片上傳遇到的問題

    后端寫個上傳圖片的接口可不是很簡單,只需要讓這個字段限制為圖片格式,后臺做個保存的邏輯就完事了,前端處理還要牽扯到請求頭,數據格式的處理等等問題,按照老傳統(tǒng)把圖片按照字符串往接口put發(fā)現返回的全是400錯誤,直到我知道了前端的FormData方法!
    2021-05-05
  • vue項目中實現全局引入jquery

    vue項目中實現全局引入jquery

    這篇文章主要介紹了vue項目中實現全局引入jquery方式,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-06-06
  • 在antd4.0中Form使用initialValue操作

    在antd4.0中Form使用initialValue操作

    這篇文章主要介紹了在antd4.0中Form使用initialValue操作,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-11-11
  • uniapp?APP中內嵌webview的H5與APP相互通訊動態(tài)傳參代碼示例

    uniapp?APP中內嵌webview的H5與APP相互通訊動態(tài)傳參代碼示例

    最近外部公司的app要接入我司的uni H5項目,所以這篇文章主要給大家介紹了關于uniapp?APP中內嵌webview的H5與APP相互通訊動態(tài)傳參的相關資料,需要的朋友可以參考下
    2024-04-04
  • vue實現商品列表的添加刪除實例講解

    vue實現商品列表的添加刪除實例講解

    在本篇內容里小編給大家分享的是關于vue實現商品列表的添加刪除實例講解,有興趣的朋友們可以參考下。
    2020-05-05
  • vue項目使用luckyexcel預覽excel表格功能(心路歷程)

    vue項目使用luckyexcel預覽excel表格功能(心路歷程)

    這篇文章主要介紹了vue項目使用luckyexcel預覽excel表格,我總共嘗試了2種方法預覽excel,均可實現,還發(fā)現一種方法可以實現,需要后端配合,叫做KKfileview,本文給大家介紹的非常詳細,需要的朋友可以參考下
    2023-10-10
  • 詳解vue如何使用自定義指令

    詳解vue如何使用自定義指令

    在Vue的模板語法中,我們學了很多指令,當然除了這些指令,Vue也允許我們自己定義自己的指令,所以本文就來和大家聊聊如何使用自定義指令吧
    2023-10-10
  • 使用Vue綁定class和style樣式的幾種寫法總結

    使用Vue綁定class和style樣式的幾種寫法總結

    這篇文章主要介紹了使用Vue綁定class和style樣式的幾種寫法,文章通過代碼示例介紹的非常詳細,具有一定的參考價值,需要的朋友可以參考下
    2023-07-07

最新評論

雅江县| 新和县| 周宁县| 泗阳县| 湖州市| 宿松县| 慈溪市| 新巴尔虎右旗| 井陉县| 遂昌县| 武鸣县| 广宁县| 衡阳县| 全椒县| 依安县| 伊金霍洛旗| 灵武市| 阳新县| 阜康市| 毕节市| 齐河县| 拉萨市| 长武县| 嘉定区| 陵川县| 资中县| 喀喇| 罗江县| 曲阜市| 即墨市| 濮阳县| 眉山市| 德格县| 清水县| 景洪市| 奉新县| 和平县| 富蕴县| 苍山县| 马龙县| 通海县|