VUEX

veux

什么是Vuex?

vuex是一个专门为vue.js设计的集中式状态管理架构。状态、我理解为在data中的属性需要共享给其他vue组件使用的部分,就叫做状态。简单的说就是data中需要共用的属性
优点

1、Vuex的状态存储是响应式的:就是当你的组件使用到了这个Vuex的状态,一旦它改变了,所有关联的组件都会自动更新相对应的数据,这样开发者省事很多。

2、不能直接修改Vuex的状态:如果是个全局对象变量,要修改很容易,但是在Vuex中不能这样做,想修改就得使用Vuex提供的唯一途径:显示地提交(commint)mutations来实现修改(没了解过这里没关系,下一节前端君会有介绍)。这样做的好处就是方便我们跟踪每一个状态的变化,在开发过程中调试的时候,非常实用。

state访问状态对象

const state ,这个就是我们说的访问状态对象,它就是我们SPA(单页应用程序)中的共享值。

学习状态对象赋值给内部对象,也就是把stroe.js中的值,赋值给我们模板里data中的值。有三种赋值方

一、 通过computed的计算属性直接赋值

computed属性可以在输出前,对data中的值进行改变,我们就利用这种特性把store.js中的state值赋值

给我们模板中的data值。

二、通过mapState的对象来赋值

我们首先要用import引入mapState。

三、通过mapState的数组来赋值

Vuex的五个核心概念

State

State是我们唯一的数据源,也就是说我们需要把组件里面的一些状态提取出来放到State里面去,State

是我们唯一的载体,我们必须要去定义我们的State

Getters

通过Getters可以派生出一些新的状态 ;举一个例子,例如购物车的数量,大于99的时候,我们需要变

成"99+";这时候你仅仅定义一个state肯定是满足不了的;我们需要重新去延伸一个getters去做我们这样

的一个操作

Mutations

更改Vuex的store中的状态的唯一方法是提交mutation,mutations里面只定义了函数,函数内部给值加1;

但是需要有些地方去触发它
store.commit('increment') //去提交这个函数 这样我们的值才能去+1
Actions

用于提交 mutation,而不是直接变更状态,可以包含任意异步操作。

只有通过action=>mutations=>states,这个流程进行操作

Modules

面对复杂的应用程序,当管理的状态比较多时;我们需要将vuex的store对象分割成模块(modules)。

我对vuex的理解

Vuex其实也并不是很高大上的东西,它是一个公共状态管理库,它在业务非常复杂的时候才会使用
比如:

多个视图依赖于同一状态。

来自不同视图的行为需要变更同一状态。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值