Vuex中getters动态获取state的值
发布日期:2022-02-17 02:39:47 浏览次数:29 分类:技术文章

本文共 1009 字,大约阅读时间需要 3 分钟。

前言

在做项目时,getters里有很多冗余代码,但是仔细一看可以根据参数来解决,于是决定使用传参来进行获取,减少代码冗余。

案例

需求:在getters里能够根据值动态获取到people的元素。经过多次尝试,最终得到下面的代码。

state.js代码如下:

export default {
people: [ {
name: 'zs', age: 14 }, {
name: 'ss', age: 24 }, {
name: 'gh', age: 34 } ]}

getters.js代码如下:

const getters = {
// 根据index获取state.person[index] getPerson: function (state) {
// console.log(state) return function (index) {
return state.people[index] } }, // 获取state.person[0] getPerson1: function (state) {
// console.log('getPerson1:', state.people[0]) // console.log(typeof getters.getPerson) return function // console.log(getters.getPerson(state)(1)) 注: state不传过去的话,getPerson()找不到state return getters.getPerson(state)(1) // 成功获取state.person[0] }, getPerson2: function (state) {
return getters.getPerson(state)(2) // 成功获取到state.person[1] }}export default getters

说明

因为项目中数据还要响应式,因此我使用setInterval方法来模拟是否会实时更新,事实证明可以,因此可以推荐用这种方法。

在这里插入图片描述
在这里插入图片描述

转载地址:https://blog.csdn.net/qq_39811414/article/details/109609670 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!

上一篇:Vuex分模块使用
下一篇:vue中简单封装自己的json-editor

发表评论

最新留言

关注你微信了!
[***.104.42.241]2024年05月01日 08时18分39秒

关于作者

    喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!

推荐文章