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

vuex的輔助函數(shù)該如何使用

 更新時(shí)間:2021年06月19日 08:41:02   作者:白房子  
vue通過輔助函數(shù)mapState、mapActions、mapMutations,把vuex.store中的屬性映射到vue實(shí)例身上,這樣在vue實(shí)例中就能訪問vuex.store中的屬性了,對(duì)于操作vuex.store就很方便了,本文具體的介紹下這些輔助函數(shù)的使用方法

mapState

import { mapState } from 'vuex'

export default {
  // ...
  computed:{
     ...mapState({
         // 箭頭函數(shù)可使代碼更簡(jiǎn)練
         count: state => state.count,
         // 傳字符串參數(shù) 'count' 等同于 `state => state.count`
         countAlias: 'count',

         // 為了能夠使用 `this` 獲取局部狀態(tài),必須使用常規(guī)函數(shù)
         countPlusLocalState (state) {
             return state.count + this.localCount
         }
  	})
  }
}

定義的屬性名與state中的名稱相同時(shí),可以傳入一個(gè)數(shù)組

//定義state
const state={
    count:1,
}

//在組件中使用輔助函數(shù)
computed:{
    ...mapState(['count'])
}

mapGetters

computed:{
    ...mapGetters({
      // 把 `this.doneCount` 映射為 `this.$store.getters.doneTodosCount`
      doneCount: 'doneTodosCount'
    })
}

當(dāng)屬性名與getters中定義的相同時(shí),可以傳入一個(gè)數(shù)組

computed:{
  computed: {
  // 使用對(duì)象展開運(yùn)算符將 getter 混入 computed 對(duì)象中
    ...mapGetters([
      'doneTodosCount',
      'anotherGetter',
      // ...
    ])
  }
}

總結(jié):

  • mapState與mapGetters都用computed來進(jìn)行映射
  • 在組件中映射完成后,通過this.映射屬性名進(jìn)行使用

mapMutations

methods:{
    ...mapMutations({
        add: 'increment' // 將 `this.add()` 映射為 `this.$store.commit('increment')`
    })
}

當(dāng)屬性名與mapMutatios中定義的相同時(shí),可以傳入一個(gè)數(shù)組

methods:{
    ...mapMutations([
        'increment', // 將 `this.increment()` 映射為 `this.$store.commit('increment')`

        // `mapMutations` 也支持載荷:
        'incrementBy' // 將 `this.incrementBy(amount)` 映射為 `this.$store.commit('incrementBy', amount)`
    ]),
}

mapActios

mathods:{
    ...mapActions({
        add: 'increment' // 將 `this.add()` 映射為 `this.$store.dispatch('increment')`
    })
}

當(dāng)屬性名與mapActios中定義的相同時(shí),可以傳入一個(gè)數(shù)組

methods:{
    ...mapActions([
        'increment', // 將 `this.increment()` 映射為 `this.$store.dispatch('increment')`	
        // `mapActions` 也支持載荷:
        'incrementBy' // 將 `this.incrementBy(amount)` 映射為 `this.$store.dispatch('incrementBy', amount)`
    ]),
}

總結(jié)

  • mapMutations與mapActios都在methods中進(jìn)行映射
  • 映射之后變成一個(gè)方法

多個(gè)modules

在不使用輔助函數(shù)的時(shí)候,

this.$store.commit('app/addCount')

使用輔助函數(shù),輔助函數(shù)的第一個(gè)參數(shù)給定命名空間的路徑

computed: {
  ...mapState('some/nested/module', {
    a: state => state.a,
    b: state => state.b
  })
},
methods: {
  ...mapActions('some/nested/module', [
    'foo', // -> this.foo()
    'bar' // -> this.bar()
  ])
}

或者使用 createNamespacedHelpers函數(shù)來創(chuàng)建一個(gè)基于命名空間的輔助函數(shù)

import { createNamespacedHelpers } from 'vuex'

const { mapState, mapActions } = createNamespacedHelpers('some/nested/module') //給定路徑
//使用方法與之前相同
export default {
  computed: {
    // 在 `some/nested/module` 中查找
    ...mapState({
      a: state => state.a,
      b: state => state.b
    })
  },
  methods: {
    // 在 `some/nested/module` 中查找
    ...mapActions([
      'foo',
      'bar'
    ])
  }
}

以上就是vuex的輔助函數(shù)該如何使用的詳細(xì)內(nèi)容,更多關(guān)于vuex的輔助函數(shù)的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • vue組件化中slot的基本使用方法

    vue組件化中slot的基本使用方法

    這篇文章主要給大家介紹了關(guān)于vue組件化中slot的基本使用方法,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家學(xué)習(xí)或者使用vue具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-05-05
  • Vue.js雙向綁定操作技巧(初級(jí)入門)

    Vue.js雙向綁定操作技巧(初級(jí)入門)

    這篇文章主要介紹了Vue.js雙向綁定操作技巧(初級(jí)入門)的相關(guān)資料,非常不錯(cuò),具有參考借鑒價(jià)值,需要的朋友可以參考下
    2016-12-12
  • vue單頁面SEO優(yōu)化的實(shí)現(xiàn)

    vue單頁面SEO優(yōu)化的實(shí)現(xiàn)

    本文主要介紹了vue單頁面SEO優(yōu)化的實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2022-06-06
  • 基于Vue實(shí)現(xiàn)頁面全屏封裝的詳細(xì)步驟

    基于Vue實(shí)現(xiàn)頁面全屏封裝的詳細(xì)步驟

    眾所周知:目前可視化大屏,視頻播放等常見功能都需要用到全屏,本文將使用兩種技術(shù)實(shí)現(xiàn)全屏功能的封裝,讓不同技術(shù)棧的同學(xué)都可以輕松掌握,好了,讓我們來實(shí)現(xiàn)一個(gè)既兼容性強(qiáng)又易于管理的全屏功能組件吧,需要的朋友可以參考下
    2024-08-08
  • Element-ui之ElScrollBar組件滾動(dòng)條的使用方法

    Element-ui之ElScrollBar組件滾動(dòng)條的使用方法

    這篇文章主要介紹了Element-ui之ElScrollBar組件滾動(dòng)條的使用方法,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2018-09-09
  • vue之將echart封裝為組件

    vue之將echart封裝為組件

    這篇文章主要介紹了vue之將echart封裝為組件,本文將會(huì)以雷達(dá)圖為案例,一步步講解在vue項(xiàng)目中如何使用echart,如何將其封裝為能重復(fù)調(diào)用的組件
    2018-06-06
  • Vue axios設(shè)置訪問基礎(chǔ)路徑方法

    Vue axios設(shè)置訪問基礎(chǔ)路徑方法

    今天小編就為大家分享一篇Vue axios設(shè)置訪問基礎(chǔ)路徑方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2018-09-09
  • VUE中攔截請(qǐng)求并無感知刷新token方式

    VUE中攔截請(qǐng)求并無感知刷新token方式

    這篇文章主要介紹了VUE中攔截請(qǐng)求并無感知刷新token方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2024-08-08
  • Vue項(xiàng)目使用Websocket大文件FileReader()切片上傳實(shí)例

    Vue項(xiàng)目使用Websocket大文件FileReader()切片上傳實(shí)例

    這篇文章主要介紹了Vue項(xiàng)目使用Websocket大文件FileReader()切片上傳實(shí)例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-10-10
  • vue項(xiàng)目中的數(shù)據(jù)變化被watch監(jiān)聽并處理

    vue項(xiàng)目中的數(shù)據(jù)變化被watch監(jiān)聽并處理

    這篇文章主要介紹了vue項(xiàng)目中的數(shù)據(jù)變化被watch監(jiān)聽并處理,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-04-04

最新評(píng)論

无为县| 自治县| 庄浪县| 卢龙县| 兴义市| 普安县| 封开县| 伊宁县| 石家庄市| 石渠县| 同德县| 栾城县| 松阳县| 蓬溪县| 九江市| 邳州市| 斗六市| 泸水县| 廉江市| 宁阳县| 梨树县| 冷水江市| 垦利县| 柳河县| 常德市| 阳泉市| 独山县| 林甸县| 洛浦县| 仪征市| 定日县| 凉城县| 新野县| 长武县| 积石山| 兖州市| 西乌| 平顺县| 阜南县| 缙云县| 靖边县|