Vuex的五个核心属性及辅助函数

Vuex的五个核心属性及辅助函数

Vuex是什么??
VueX 是一个专门为 Vue.js 应用设计的状态管理架构

主要包括几个模块
state 保存全局状态的
getters 允许组件从state中获取数据,相当于计算属性
mutation store中唯一改变state中状态的方法,同步函数
actions 用于提交mutation 异步操作
modules 拆分多个模块的

辅助函数
mapState
引入

import { mapState } from 'vuex

3种方法

  1. 对象:
computed: mapState({
  // 箭头函数
  count: state => state.count,
  // 这里为了能够使用this获取局部变量localCount,必须使用常规函数
  countPlusLocalState (state) {
    return state.count + this.localCount
  }
})
  1. 数组
computed: mapState([
  // 映射 this.count 为 store.state.count
  'count'
])
  1. 对象展开运算符
computed: {
    localComputed () {},
  ...mapState({})
}

mapGetters:mapGetters将store中的getter映射到局部计算属性

computed: {
  ...mapGetters([
    'oneGetter',
    'anotherGetter'
  ])
}

mapMutations
使用mapMutations辅助函数将组件中的methods映射为store.commit调用。

methods: {
  // 通过 this.$store.commit('tips')
  ...mapMutations(['tips'])
}

mapAction

methods: {
  // 通过 this.$store.dispatch('tips')传
  ...mapActions(['tips'])
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Vuex 是一个专门为 Vue.js 应用程序开发的状态管理模式,它集中管理了应用程序的所有组件的状态,使得状态的变更变得可追踪和可控。Vuex核心是五个属性,分别是: 1. state:状态存储对象,用于存储应用程序的所有状态数据。 2. getters:计算属性,用于从 state 中派生出一些状态,可以当做 state 的计算属性使用。 3. mutations:同步修改状态的方法,用于修改 state 中的数据,必须是同步函数。 4. actions:异步修改状态的方法,用于提交 mutations,可以包含任意异步操作。 5. modules:用于将 store 拆分成模块,每个模块都有自己的 state、getters、mutations、actions 属性。 使用 Vuex 的步骤如下: 1. 安装 Vuex:`npm install vuex --save` 2. 在 main.js 中引入 Vuex:`import Vuex from 'vuex'` 3. 创建 store 实例:`const store = new Vuex.Store({ state, getters, mutations, actions, modules })` 4. 在 Vue 根实例中注入 store:`new Vue({ store, render: h => h(App) }).$mount('#app')` 5. 在组件中使用 state 和 getters:`this.$store.state.xxx` 和 `this.$store.getters.xxx` 6. 在组件中使用 mutations 和 actions:`this.$store.commit('xxx')` 和 `this.$store.dispatch('xxx')` 7. 在组件中使用模块中的 state、getters、mutations 和 actions:`this.$store.state.module.xxx`、`this.$store.getters.module.xxx`、`this.$store.commit('module/xxx')` 和 `this.$store.dispatch('module/xxx')`。 以上就是 Vuex 的五个属性及使用方法。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值