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

vuex中的四個(gè)map方法的使用小結(jié)

 更新時(shí)間:2023年05月31日 11:27:30   作者:小花皮豬  
vuex里面有四個(gè)map方法,他們分別可以針對(duì)不同的元素進(jìn)行不同的代碼生成,本文就來(lái)詳細(xì)的介紹一下vuex中的四個(gè)map方法,具有一定的參考價(jià)值,感興趣的可以了解一下

vuex里面有四個(gè)map方法,他們分別可以針對(duì)不同的元素進(jìn)行不同的代碼生成

這四個(gè)map方法都是異曲同工,明白了一個(gè)基本上都明白了

1 編寫案例

現(xiàn)在想要展示一段文本,其中里面兩個(gè)參數(shù)要存在store的state里面,那么每次獲取都要通過(guò)這么一大串代碼獲取,及其復(fù)雜且不美觀,vue的風(fēng)格指南就說(shuō)過(guò)插值語(yǔ)法不要寫的這么復(fù)雜

2 計(jì)算屬性簡(jiǎn)化

當(dāng)然我們可以可以通過(guò)計(jì)算屬性簡(jiǎn)化,但是計(jì)算屬性只支持在當(dāng)前組件使用

但是可以觀察發(fā)現(xiàn),其實(shí)都是讀取的store.state.x里面的數(shù)據(jù),代碼都是一樣的,所以是否有辦法生成或者封裝這些冗余的代碼呢?

vuex的設(shè)計(jì)者當(dāng)然也考慮到了這個(gè)問(wèn)題,下面我們就去使用生成相關(guān)代碼的函數(shù)

3 mapState簡(jiǎn)化

想要使用生成相關(guān)代碼的函數(shù),需要先引入vuex,從vuex身上引入mapState

// 引入vuex身上的mapState
import {mapState} from 'vuex'

mapState是一個(gè)對(duì)象,里面有很多組key,value,它有兩種寫法

寫法1(對(duì)象寫法)

  // 借助mapState生成計(jì)算屬性,從state中讀取數(shù)據(jù)(對(duì)象寫法)
  ...mapState({sum:'sum',address:'address',info:'info'}),

寫法2(數(shù)組寫法)

除了對(duì)象寫法,還有更為精簡(jiǎn)的數(shù)組寫法

注意,此時(shí)一定不能直接寫成對(duì)象簡(jiǎn)寫形式,應(yīng)該放到一個(gè)數(shù)組里面再進(jìn)行簡(jiǎn)寫形式

每一個(gè)key都有兩個(gè)用途,一個(gè)用途是生成的計(jì)算屬性名稱,另外一個(gè)是從state里面讀取的屬性名稱

// 借助mapState生成計(jì)算屬性,從state中讀取數(shù)據(jù)(數(shù)組寫法)
    ...mapState(['sum','address','info']),

4 mapGetters簡(jiǎn)化

mapGetters和mapState的寫法是一樣的,首先需要從vuex里面引用出來(lái)

寫法也是分為對(duì)象和數(shù)組寫法,和mapState如出一轍

寫法1(對(duì)象寫法)

// 借助mapGetters生成計(jì)算屬性,從getters中讀取數(shù)據(jù)(對(duì)象寫法)
...mapGetters({bigSum:'bigSum'}),

寫法2(數(shù)組寫法)

// 借助mapGetters生成計(jì)算屬性,從getters中讀取數(shù)據(jù)(數(shù)組寫法)
 ...mapGetters(['bigSum']),

到此mapState和mapState對(duì)于計(jì)算屬性的優(yōu)化就結(jié)束了,下面是mapActions和mapMutations優(yōu)化methods

注意觀察,這些代碼也都是很相似的,我們也是可以進(jìn)行優(yōu)化的

5 mapMutations

首先也是引入vuex中的mapMutations

寫法1(對(duì)象寫法)

 // 借助mapMutations生成對(duì)應(yīng)的方法,方法中會(huì)調(diào)用commit去聯(lián)系mutations(對(duì)象寫法)
 ...mapMutations({increment:'INCREMENT',decrement:'DECREMENT'})

這時(shí)候發(fā)現(xiàn)問(wèn)題

這時(shí)候我們需要給事件綁定參數(shù)

這樣就解決了

寫法2(數(shù)組寫法)

// 借助mapMutations生成對(duì)應(yīng)的方法,方法中會(huì)調(diào)用commit去聯(lián)系mutations(數(shù)組寫法)
 ...mapMutations(['INCREMENT','DECREMENT']),

6 mapActions

首先還是引入vuex中的 mapActions

// 引入vuex身上的mapState和mapGetters和mapMutations和mapActions
import {mapState,mapGetters,mapMutations,mapActions} from 'vuex'

寫法1(對(duì)象寫法)

 // 借助mapActions生成對(duì)應(yīng)的方法,方法中會(huì)調(diào)用dispatch去聯(lián)系actions(對(duì)象寫法)
 ...mapActions({incrementOdd:'incrementOdd',incrementOdd:'incrementOdd'}),

寫法2(數(shù)組寫法)

// 借助mapActions生成對(duì)應(yīng)的方法,方法中會(huì)調(diào)用dispatch去聯(lián)系actions(數(shù)組寫法)
...mapActions(['incrementOdd','incrementWait']),

7 總結(jié)

1 mapState方法: 用于幫助我們映射state中的數(shù)據(jù)為計(jì)算屬性

computed: {
    //借助mapState生成計(jì)算屬性:sum、school、subject(對(duì)象寫法)
     ...mapState({sum:'sum',school:'school',subject:'subject'}),
    //借助mapState生成計(jì)算屬性:sum、school、subject(數(shù)組寫法)
    ...mapState(['sum','school','subject']),
},

2 mapGetters方法: 用于幫助我們映射getters中的數(shù)據(jù)為計(jì)算屬性

computed: {
    //借助mapGetters生成計(jì)算屬性:bigSum(對(duì)象寫法)
    ...mapGetters({bigSum:'bigSum'}),
    //借助mapGetters生成計(jì)算屬性:bigSum(數(shù)組寫法)
    ...mapGetters(['bigSum'])
},

3 mapActions方法: 用于幫助我們生成與actions對(duì)話的方法,即:包含$store.dispatch(xxx)的函數(shù)

methods:{
    //靠mapActions生成:incrementOdd、incrementWait(對(duì)象形式)
    ...mapActions({incrementOdd:'jiaOdd',incrementWait:'jiaWait'})
    //靠mapActions生成:incrementOdd、incrementWait(數(shù)組形式)
    ...mapActions(['jiaOdd','jiaWait'])
}

4 mapMutations方法: 用于幫助我們生成與mutations對(duì)話的方法,即:包含$store.commit(xxx)的函數(shù)

methods:{
    //靠mapActions生成:increment、decrement(對(duì)象形式)
    ...mapMutations({increment:'JIA',decrement:'JIAN'}),
    //靠mapMutations生成:JIA、JIAN(對(duì)象形式)
    ...mapMutations(['JIA','JIAN']),
}

備注:mapActions與mapMutations使用時(shí),若需要傳遞參數(shù)需要:在模板中綁定事件時(shí)傳遞好參數(shù),否則參數(shù)是事件對(duì)象。

到此這篇關(guān)于vuex中的四個(gè)map方法的使用小結(jié)的文章就介紹到這了,更多相關(guān)vuex map使用內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • 在vue中使用axios實(shí)現(xiàn)post方式獲取二進(jìn)制流下載文件(實(shí)例代碼)

    在vue中使用axios實(shí)現(xiàn)post方式獲取二進(jìn)制流下載文件(實(shí)例代碼)

    這篇文章主要介紹了在vue中使用axios實(shí)現(xiàn)post方式獲取二進(jìn)制流下載文件的相關(guān)資料,需要的朋友可以參考下
    2019-12-12
  • elementui源碼學(xué)習(xí)仿寫一個(gè)el-tooltip示例

    elementui源碼學(xué)習(xí)仿寫一個(gè)el-tooltip示例

    本篇文章記錄仿寫一個(gè)el-tooltip組件細(xì)節(jié),從而有助于大家更好理解餓了么ui對(duì)應(yīng)組件具體工作細(xì)節(jié),本文是elementui源碼學(xué)習(xí)仿寫系列的又一篇文章,后續(xù)空閑了會(huì)不斷更新并仿寫其他組件
    2023-07-07
  • 你準(zhǔn)備好迎接vue3.0了嗎

    你準(zhǔn)備好迎接vue3.0了嗎

    這篇文章主要介紹了你準(zhǔn)備好迎接vue3.0了嗎,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2020-04-04
  • 使用vue開(kāi)發(fā)移動(dòng)端管理后臺(tái)的注意事項(xiàng)

    使用vue開(kāi)發(fā)移動(dòng)端管理后臺(tái)的注意事項(xiàng)

    這篇文章主要介紹了使用vue開(kāi)發(fā)移動(dòng)端管理后臺(tái)的注意事項(xiàng),小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2019-03-03
  • 詳解vue如何封裝封裝一個(gè)上傳多張圖片的組件

    詳解vue如何封裝封裝一個(gè)上傳多張圖片的組件

    上傳圖片不管是后臺(tái)還是前端小程序,上傳圖片都是一個(gè)比不可少的功能有時(shí)候需要好幾個(gè)頁(yè)面都要上傳圖片,每個(gè)頁(yè)面都寫一個(gè)非常不方便,本文就給大家介紹vue如何封裝一個(gè)上傳多張圖片的組件,需要的朋友可以參考下
    2023-07-07
  • js/vue如何實(shí)現(xiàn)函數(shù)(方法)當(dāng)做參數(shù)傳遞

    js/vue如何實(shí)現(xiàn)函數(shù)(方法)當(dāng)做參數(shù)傳遞

    這篇文章主要介紹了js/vue實(shí)現(xiàn)函數(shù)(方法)當(dāng)做參數(shù)傳遞方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2026-03-03
  • Vue CLI2升級(jí)至Vue CLI3的方法步驟

    Vue CLI2升級(jí)至Vue CLI3的方法步驟

    這篇文章主要介紹了Vue CLI2升級(jí)至Vue CLI3的方法步驟,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2019-05-05
  • vue3.0 vue.config.js 配置基礎(chǔ)的路徑問(wèn)題

    vue3.0 vue.config.js 配置基礎(chǔ)的路徑問(wèn)題

    這篇文章主要介紹了vue3.0 vue.config.js 配置基礎(chǔ)的路徑問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-10-10
  • Vue移動(dòng)端實(shí)現(xiàn)pdf/excel/圖片在線預(yù)覽

    Vue移動(dòng)端實(shí)現(xiàn)pdf/excel/圖片在線預(yù)覽

    這篇文章主要為大家詳細(xì)介紹了Vue移動(dòng)端實(shí)現(xiàn)pdf/excel/圖片在線預(yù)覽功能的相關(guān)方法,文中的示例代碼講解詳細(xì),有需要的小伙伴可以參考下
    2024-04-04
  • vue2.0+koa2+mongodb實(shí)現(xiàn)注冊(cè)登錄

    vue2.0+koa2+mongodb實(shí)現(xiàn)注冊(cè)登錄

    這篇文章主要介紹了vue2.0+koa2+mongodb實(shí)現(xiàn)注冊(cè)登錄功能,非常不錯(cuò),具有參考借鑒價(jià)值,需要的朋友可以參考下
    2018-04-04

最新評(píng)論

即墨市| 望奎县| 依兰县| 漳浦县| 界首市| 靖西县| 泸州市| 泸州市| 平阳县| 莱芜市| 读书| 南昌县| 新余市| 佳木斯市| 商水县| 内乡县| 阜南县| 昆明市| 阳西县| 无锡市| 通城县| 武安市| 靖远县| 旌德县| 南华县| 南开区| 西峡县| 耒阳市| 汉中市| 肥东县| 黎平县| 玉屏| 三门峡市| 南昌市| 湘潭市| 重庆市| 明星| 台州市| 海宁市| 新河县| 北宁市|