vuex store

管理状态,共享数据,在各个组件之间管理外部状态

Vuex store 使用

  1. 引入并通过 use 方法使用

  2. 创建状态仓库

var store = new Vuex.Store({
  state: {
	isLogin: true
  }
})
  1. 通过 this.$store.state.xxx 拿到数据

Vuex 的相关操作

vuex 状态管理流程

view --> actions --> mutations --> state --> view

直接通过 mutations 改变状态

var store = new Vuex.Store({
  state: {
    count: 1
  },
  mutations: {
	addCount(state) {
	  state.count ++
	}
  }
})

调用方法:
this.$store.commit('addCount')

通过 actions 可以异步改变状态

var store = new Vuex.Store({
  state: {
    count: 1
  },
  mutations: {
	addCount(state) {
	  state.count ++
	}
  },
  actions: {
	addCountAction(context) {
	  context.commit('addCount')
    },
	// ES6
	// addCountActions({commit}) {
	//   commit('addCount')
	// }
  }
})

调用方法:
this.$store.dispatch('addCountAction')

actions 提交的是 mutations,而不是直接变更状态,并且可以包含异步操作,但是 mutations 只能包含同步操作。

getters 计算属性

getters: {
  getCount(state) {
	return state.count > 0 ? state.count : 0
  }
}

获取方法:
this.$store.getters.getCount

通过获取 getters,可以得到经过处理的 state 状态。

Vuex 是一个用于 Vue.js 应用程序的状态管理库。它允许您在应用程序中集中管理和共享状态,以便多个组件可以访问和修改相同的状态数据。 Vuex 的核心概念包括: 1. State(状态):Vuex 使用一个单一的状态树来存储应用程序的所有状态数据。您可以将状态视为应用程序的数据源,所有组件都可以从中获取数据。状态是响应式的,当状态发生变化时,相关的组件会自动更新。 2. Mutation(变更):Mutation 是用于修改状态的方法。它们是同步函数,接受当前的状态作为第一个参数,并接受可选的负载数据作为第二个参数。通过提交一个 Mutation,可以在其中修改状态,以确保状态的变更是可追踪和可预测的。 3. Action(动作):Action 类似于 Mutation,但是可以包含异步操作。它们可以用于处理异步逻辑、调用 API、提交 Mutation 等。Action 通过提交 Mutation 来间接修改状态。 4. Getter(获取器):Getter 可以看作是从状态中派生出来的计算属性。它们允许您在 store 中定义一些可以在多个组件中重用的计算逻辑。 通过创建一个 Vuex store,您可以集中管理应用程序中的状态,并通过在组件中使用 getter、commit mutation 或 dispatch action 的方式来访问和修改状态。 在 Vue.js 应用程序中使用 Vuex,您需要先安装 Vuex 并将其配置为应用程序的一部分。然后,您可以创建一个包含状态、mutations、actions 和 getters 的 store 对象,并在 Vue 组件中使用 `this.$store` 来访问 store 中的数据和方法。 希望这个解释对您有帮助!如果您还有其他问题,请随时提问。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值