vuex的概述

Vuex是一个用于管理组件间共享状态的库,提供集中化的数据管理,方便维护和提高开发效率。它包括state、mutation、action、module和getter等组成部分。getters用于筛选和过滤state中的数据,mutations通过commit来改变state,而actions则用于处理异步操作并触发mutations。在实际应用中,组件之间频繁交互的数据适合存储在Vuex中。
摘要由CSDN通过智能技术生成

Vuex的概述

  • 组件之间共享数据的方式

               父向子传值:v-bind 属性绑定

               子向父传值:v-on 事件绑定

               兄弟组件之间共享数据:EventBus

                         $on   接收数据的那个组件

                         $emit   发送数据的那个组件

注意:以上组件之间传值适用于小范围内,如果组件之间频繁的共享数据,则需要使用vuex

  •  Vuex是什么?

           Vuex是实现组件全局状态(数据)管理的一种机制,可以方便的实现组件之间数据的共享

组件传值
  • 使用Vuex统一管理状态的好处
    • 能够在vuex中集中管理共享的数据,易于开发和后期维护
    • 能够高效的实现组件之间的数据共享,提高开发效率
    • 存储在vuex中的数据都是响应式的,能够实时保持数据和页面的同步
  • 什么样的数据适合存储到Vuex中?
    • 一般情况下,只有组件之间共享的数据,才有必要存储到Vuex中,对于组件的私有数据,依旧存储在组件自身的data中。
  • 组成:state、mutation、action、module、getter
    • getters:用来对store的state里边的数据进行筛选,为什么过滤数据要写在这个里边呢?是因为如果多个组件都需要进行数据筛选,那么就没必要在每个组件里单独写,只需要放在getters执行,解决了代码的冗余

    • mutations:通过commit触发mutation,从而改变state;在组件内部methods里也可以触发mutation   this.$store.commit('fn',{payload})

    • actions:Action提交的是mutation,而不是直接变更状态。可以包含任意异步操作。

    •  一般不会在组件内部直接commit触发mutation,而是在组件内部通过dispatch触发action,在action里commit去触发mutation

  • 工作流程

    • 页面用户通过dispatch触发action,action通过commit触发mutation,mutation去直接变更state,伴随着state的改变就会重新渲染页面。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值