VUEX的一点用法了解

VUEX的用法

适合用于大型项目

多个组件之间通信,如果变量过多,就会造成代码中有很多冗余数据。

作为一个完整的状态管理系统,它有一整套的方案。为什么是一个周期呢?为什么变量的更改要设置那么多步骤呢?因为这些状态并不仅仅在一个组件中使用,如果没有统一的管理办法,那么这些状态将是混乱的。因此,改变数据有统一的规则,引入数据也有统一的规则。

img

state

state是用来存储数据的。

getter

通过getter获取属性

mutation

在mutation中定义对于state中每个数据的变更方式。

通过commit方法出发mutation

在每个组件中如何获得state的数据呢?

  1. 在computed中定义函数===》可简化为箭头函数
  2. 可以通过 rename:‘name’实现;当rename和name相同时,可以简化为‘name’
  3. 多个数据,可通过mapstate实现(…mapstate)

插播一个es的新功能:computed Property Name。什么意思呢?

当我们定义对象时,其中每个属性的名称往往是不变的值,当属性名是变量时,我们只需要给它价格中括号。这里的变量可以是字面量,也可以是通过数据类型定义的变量名称

提到这个是因为,在mutations中,你会见到很多这种写法:

// store.js
import Vuex from 'vuex'
import { SOME_MUTATION } from './mutation-types'

const store = new Vuex.Store({
  state: { ... },
  mutations: {
    // 我们可以使用 ES2015 风格的计算属性命名功能来使用一个常量作为函数名
    [SOME_MUTATION] (state) {
      // mutate state
    }
  }
})

在需要改变state状态的子组件中,在methods中添加mutations。mutation中的操作是同步的,直接改变状态。

action

如果涉及到异步操作,那就使用action。通过dispatch方法调用action。

Vuex是一个状态管理模式库,用于在Vue.js应用程序中管理数据的流动。它允许你在应用程序中集中管理和维护状态,使得状态的变化能够被追踪和调试。 Vuex用法如下: 1. 安装Vuex:通过npm或yarn安装Vuex库。 2. 创建store:在Vue.js应用程序的入口文件中创建一个新的store实例,这个实例将负责管理应用程序的状态。可以使用Vuex提供的`createStore`函数来创建一个store实例。 3. 定义状态:在store实例中定义需要管理的状态。可以使用`state`选项来定义初始状态。 4. 定义mutations:使用`mutations`选项来定义修改状态的方法。每个mutation方法都接收一个state参数和一个payload参数,用于更新状态。 5. 提交mutations:在Vue组件中通过`this.$store.commit`方法来提交一个mutation,以更新状态。可以在组件的methods中调用该方法。 6. 获取状态:在Vue组件中可以通过`this.$store.state`来获取当前的状态值。 7. 定义actions:使用`actions`选项来定义异步操作和提交多个mutation的逻辑。每个action方法都接收一个context参数,它包含了当前的state、commit方法以及其他有用的属性。 8. 分发actions:在Vue组件中通过`this.$store.dispatch`方法来分发一个action,执行异步操作或者提交多个mutation。可以在组件的methods中调用该方法。 9. 模块化:如果应用程序的状态较为复杂,可以将store分割成多个模块。每个模块都有自己的state、mutations、actions等。 以上是Vuex的基本用法,通过使用Vuex,你可以方便地管理和跟踪应用程序的状态。详细的文档可以参考Vuex官方网站。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值