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

詳解vue數(shù)據(jù)響應式原理之數(shù)組

 更新時間:2022年02月13日 12:06:30   作者:前端阿龍  
這篇文章主要為大家詳細介紹了vue數(shù)據(jù)響應式原理之數(shù)組,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來幫助

src/core/observer/index.js

在這里插入圖片描述

src/core/observer/array.js arrayMethods

在這里插入圖片描述

  • 當data的數(shù)組對象中本來沒有某個屬性,然后點擊按鈕動態(tài)增加某個屬性的時候,此時此屬性是沒有g(shù)et和set的,也就是沒有響應式機制,如果想要讓你動態(tài)增加的某個屬性有響應式變化,那么就直接在數(shù)據(jù)的源頭給他初始化這個屬性,具體看下一條。
  • 當向后端返回的結(jié)果的數(shù)組對象中新增屬性的時候,建議首先循環(huán)賦值完成之后再賦值給對應的data中的變量,這樣data中變量給每個數(shù)組對象里面的屬性都會加上get和set
  • 例如:后端返回一個數(shù)組對象是 [{xx: 1},{xx: 2}],然后我們獲取到這個數(shù)組對象后把這個數(shù)組對象賦值給了this.list,那么我的data中的list的兩個數(shù)組對象中的xx屬性就有g(shù)et和set了,換句話說就是響應式的了,如果我們想要點擊按鈕的時候動態(tài)給當前數(shù)組對象中增加一個cc屬性,this.list[0].cc = 2, 請注意 此時cc屬性雖然添加到了我們對應的數(shù)組對象中,但是它不是響應式的,想要解決這個問題,那就直接在獲取后端的數(shù)據(jù)的時候直接循環(huán)添加cc屬性,設(shè)置為空,然后再賦值給this.list就行了

調(diào)試

在這里插入圖片描述

  • 我們可以看到上面的數(shù)組在最開始第一步的時候只有[1,2,3] 三個元素,然后當我們執(zhí)行了push方法后增加了一個元素,且視圖也實時更新了,這是因為在源碼中vue對修改數(shù)組的方法做了響應式的處理
  • 我們再看第三第四部修改list數(shù)組也生效了,但是視圖并沒有實時更新,這是因為vue在對數(shù)組的處理上面只修改了一些數(shù)組的方法和對數(shù)組中對象增加了響應式的操作,這是因為數(shù)組可能有很長,出于性能的考慮,沒有對數(shù)組的每一個元素都做響應式的處理。如果我們想實現(xiàn)第三第四步響應式可以使用數(shù)組的splice方法就行了

總結(jié)

本篇文章就到這里了,希望能夠給你帶來幫助,也希望您能夠多多關(guān)注腳本之家的更多內(nèi)容!      

相關(guān)文章

  • 如何解決d3.event在v7版本無效影響zoom拖拽縮放問題

    如何解決d3.event在v7版本無效影響zoom拖拽縮放問題

    這篇文章主要介紹了如何解決d3.event在v7版本無效影響zoom拖拽縮放問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2024-03-03
  • Vue3中createWebHistory和createWebHashHistory的區(qū)別詳析

    Vue3中createWebHistory和createWebHashHistory的區(qū)別詳析

    這篇文章主要給大家介紹了關(guān)于Vue3中createWebHistory和createWebHashHistory區(qū)別的相關(guān)資料,文中通過實例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2023-06-06
  • 利用Nuxt.js做Vuex數(shù)據(jù)持久化

    利用Nuxt.js做Vuex數(shù)據(jù)持久化

    這篇文章主要介紹了利用Nuxt.js做Vuex數(shù)據(jù)持久化問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2023-10-10
  • 深入了解vue-router原理并實現(xiàn)一個小demo

    深入了解vue-router原理并實現(xiàn)一個小demo

    這篇文章主要為大家詳細介紹了vue-router原理并實現(xiàn)一個小demo,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來幫助
    2022-03-03
  • vue.js—定義全局變量、函數(shù)的方式

    vue.js—定義全局變量、函數(shù)的方式

    這篇文章主要介紹了vue.js—定義全局變量、函數(shù)的方式,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2023-10-10
  • vue實現(xiàn)高德地圖添加多個點標記

    vue實現(xiàn)高德地圖添加多個點標記

    地圖多點標注其實是個非常簡單的問題,這篇文章主要給大家介紹了關(guān)于vue實現(xiàn)高德地圖添加多個點標記的相關(guān)資料,文中通過實例代碼介紹的非常詳細,需要的朋友可以參考下
    2023-06-06
  • vue實現(xiàn)圖書管理系統(tǒng)

    vue實現(xiàn)圖書管理系統(tǒng)

    這篇文章主要為大家詳細介紹了vue實現(xiàn)圖書管理系統(tǒng),文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2020-12-12
  • vue定時器設(shè)置和關(guān)閉頁面時關(guān)閉定時器方式

    vue定時器設(shè)置和關(guān)閉頁面時關(guān)閉定時器方式

    這篇文章主要介紹了vue定時器設(shè)置和關(guān)閉頁面時關(guān)閉定時器方式,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2023-06-06
  • Vue中的計算屬性與監(jiān)聽屬性

    Vue中的計算屬性與監(jiān)聽屬性

    這篇文章介紹了Vue中的計算屬性與監(jiān)聽屬性,文中通過示例代碼介紹的非常詳細。對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2022-03-03
  • vue-admin-template模板添加tagsview的實現(xiàn)

    vue-admin-template模板添加tagsview的實現(xiàn)

    本文主要介紹了vue-admin-template模板添加tagsview的實現(xiàn),文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2022-04-04

最新評論

建瓯市| 巴彦县| 雷州市| 宜章县| 肇源县| 红原县| 泾川县| 永福县| 阿城市| 驻马店市| 江都市| 云阳县| 钦州市| 贡觉县| 苏尼特左旗| 特克斯县| 高密市| 镇平县| 永泰县| 平陆县| 三原县| 聂荣县| 台北市| 镇巴县| 安福县| 铜陵市| 额尔古纳市| 蕉岭县| 伊金霍洛旗| 青海省| 宜良县| 二连浩特市| 定边县| 阿拉善左旗| 灵武市| 襄城县| 德令哈市| 石棉县| 深泽县| 铁力市| 莱西市|