学习vue2.x store

一、安装

  1. 项目根目录下执行以下命令:
npm install vuex --save
  1. main.js中引用如下代码:
import Vue from 'vue'
import Vuex from 'vuex'

Vue.use(Vuex)

二、使用state

1. 获取状态对象

由于 Vuex 的状态存储是响应式的,从 store 实例中读取状态最简单的方法就是在计算属性中返回某个状态:

//store.js
computed: {
   
	count() {
   
	// this.$store.state.属性名
		return this.$store.state.count
	}
}

在 Vue 组件中, 可以通过 this.$store 访问store实例

//vue组件
methods: {
   
  increment() {
   
    this.$store.commit('increment')
    console.log(this.$store.state.count)
  }
}

2. 更改状态

store.js中定义mutation处理函数,如increment

//store.js
mutations: {
   
    increment (state) {
   
      // 变更状态
      state.count++
    }
  }

3. 触发状态变更

在组件中使用this.$store.commit('函数名')的方式唤醒一个mutation处理函数:

this.$store.commit('increment')

三、使用mutation

  1. 更改 Vuex 的 store 中的状态的唯一方法是提交 mutation。
  2. 每个 mutation 都有一个字符串的事件类型 (type)和一个回调函数 (handler)。这个回调函数就是我们实际进行状态更改的地方,并且它会接受 state 作为第一个参数
//store.js
const store = createStore({
   
  state: {
   
    count: 1
  },
  mutations: {
   
    increment (state
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值