vuex的原理和使用

vuex的原理和使用

vue:

首先vue是双向动态的数据的方式驱动数据,而vuex就是解决多个视图需要的同一状态的状态管理机,采用集中式存储所有组件的状态

这里插入图片描述

  • 核心:就是store,就是一个容器,可以装应用的状态,vuex和全局对象的区别,vuex的状态改变了,相应的舰也会马上更新,而且改变state唯一的方式就是提交突变mutation
  • 优点:我们可以很方便的跟踪每一个状态的改变
  • 使用方法:
  • 安装vuex:
    1.npm install vuex --save-dev
    2.创建store文件夹,在里面创建一个store.js文件,导入vue和vuex 并且使用vuex
//引入vuex和vue
import Vue from 'vue'
import Vuex from 'vuex'

//向vue中导入使用vuex
Vue.use(Vuex)

let store =new Vuex.Store({
    modules:{
        //组件
    }
})
//导出store给其他组件共享
export default store
  1. 创建组件相关联的页面
export default {
            state:{
                相当于data

                提供一个公共的地方,存储变量,多个组件都可以使用
                state的值不可以随意修改,只可以通过mutations进行修改
                state中的值发生改变,view就会刷新

                使用,要放在计算属性中进行映射
                ...mapState()
            },
            getters:{
                相当于计算属性
                可以对state中的数据进行过滤等操作

                使用
                ...mapGetters()
            },
            mutations:{
                用来存储同步方法的
                是修改state的唯一方式

                内部方法有两个参数,一个state对象,两外一个是提交突变的同时传递的参数

                change(state,data){

                }
                使用
                    ...mapMutations()
            },
            actions:{
                存放的是异步方法
                context 
                test(context,xxx){

                    context.commit('change','hello')
                }

                使用 
                    要在methods中进行映射
                ...mapActions()
            }
        }
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Vuex 中,getter 和 setter 是用于访问和修改状态的方法Vuex 是一个专为 Vue.js 应用程序开发的状态管理库,它通过使用集中式的状态管理模式来管理应用程序的所有组件共享的数据。 getter 和 setter 的实现原理如下: 1. Getter 的原理:Getter 是用于获取状态的计算属性。当应用程序中的组件需要获取状态时,它可以通过调用 getter 方法来获取状态的值。Getter 方法接收 state 对象作为参数,从而可以访问和计算状态的值。Getter 可以接收其他 getter 作为参数,从而形成 getter 链式调用。 2. Setter 的原理:Setter 是用于修改状态的方法。当应用程序中的组件需要修改状态时,它可以通过调用 setter 方法来修改状态的值。Setter 方法接收 state 对象和一个新值作为参数,从而可以将新值设置给状态。 Vuex 将 getter 和 setter 方法与状态对象(state)结合起来,通过在 store 中定义 getter 和 mutation(用于修改状态的方法)来实现对状态的访问和修改。 当组件需要获取状态时,它可以使用 mapGetters 辅助函数将 getter 映射到组件的计算属性中,并通过计算属性来获取状态的值。类似地,当组件需要修改状态时,它可以使用 mapMutations 辅助函数将 mutation 映射到组件的方法中,并通过调用方法来修改状态的值。 这种集中式的状态管理模式可以确保应用程序中的所有组件都使用相同的状态,并且状态的修改是通过调用特定的方法来进行的,从而使状态的管理更加可控和可维护。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值