zoukankan      html  css  js  c++  java
  • Vuex 模块化 命名空间 语法糖

    修改store.js

    const countAbout = {
      namespaced: true, // 开启命名空间
      state: { x: 1 },
      mutations: { ... },
      actions: { ... },
      getters: {
        bigSum(state) {
          return state.sum * 10
        }
      }
    }
    
    const personAbout = {
      namespaced: true, // 开启命名空间
      state: { x: 1 },
      mutations: { ... },
      actions: { ... }
    }
    
    const store = new Vuex.Store({
      modules: {
        countAbout,
        personAbout
      }
    })
    

    开启命名空间后,组件中读取state数据

    // 方式一,自己直接读取
    this.$store.state.personAbout.list
    // 方式二,借助mapState读取
    ...mapState('countAbout', ['sum', 'school', 'subject'])
    

    开启命名空间后,组件中读取getters数据

    // 方式一,自己直接读取
    this.$store.getters['personAbout/firstPersonName']
    // 方式二,借助mapGetters读取
    ...mapGetters('countAbout', ['bigSum'])
    

    开启命名空间后,组件中调用dispatch

    // 方式一,自己直接dispatch
    this.$store.dispatch('personAbout/firstPersonName', person)
    // 方式二,借助mapActions
    ...mapActions('countAbout', { incrementOdd: 'jiaOdd', incrementWait: 'jiaWait' })
    

    开启命名空间后,组件中调用commit

    // 方式一,自己直接commit
    this.$store.dispatch('personAbout/ADD_PERSON', person)
    // 方式二,借助mapMutations
    ...mapMutations('countAbout', { increment: 'JIA', decrement: 'JIAN' })
    
    完结~
  • 相关阅读:
    [转]HTTP请求模型和头信息参考
    括号匹配算法
    SQL LEFT JOIN 关键字 (转)
    Vim学习资料汇总
    与图相关的算法
    关于字符串的一些算法
    Huffman编码
    迅雷开放了下载引擎
    ubuntu下《UNIX环境高级编程》(apue.h)编译出错的处理方法
    学习unix信号
  • 原文地址:https://www.cnblogs.com/lwlblog/p/15192739.html
Copyright © 2011-2022 走看看