Vuex 丨使用getters的多种方法 (二)

Vuex --> getters计算过滤操作

getters和computed类似,都是用来计算state然后生成新的数据。

我们要在不同的页面展示一个不同的数据,但是这个数据是我们通过同一个数据计算而带来的,在这里我们计算这个num,在不同的组件中展示

在store.js中配置

import Vue from 'vue'
import Vuex from 'vuex'
Vue.use(Vuex)
export default new Vuex.Store({
    state:{
        num:0
    },
    getters:{
        forList(state){
            let n = state.num + 1000;
            return n;
        },
        forLive(state){
            let n = state.num + 900;
            return n;
        }
    }
})

这是在List中

<template>
    <div id="list">
        {{forList}} //展示数据
    </div>
</template>

<script>
    import {mapGetters} from 'vuex';
    export default {
        name: "list",
        computed:{
          ...mapGetters(['forList'])
        }
    }
</script>

<style scoped>
</style>

也可以同在Live中这样

<template>
    <div id="live">
        Live
        {{$store.getters.forLive}}
    </div>
</template>
<script>
    export default {
        name: "live"
    }
</script>
<style scoped>
</style>

大家也可以自己灵活配置


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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值