vuex03Getter与mapGetters

简介: vuex03Getter与mapGetters

   

Getter是个啥

是个对象,类似于computed里面的对象

如果我们需要对state对象进行做处理计算,比如说,我们有三家超市,我们想计算三家超市的总营业额。同时还要计算实际的收入,假设成本是200。

同时getter还可以接收其他其他getter

const store = new Vuex.Store({
    state: {
        shop1: 100,
        shop2: 200,
        shop3: 300,
    },
    getters: {
        getShopTotal(state) {
            return state.shop1 + state.shop2 + state.shop3
        },
        getShopMoney(state, getters) {
            return getters.getShopTotal - 200
        }
    }
})
 computed: {
    shopTotal() {
      return this.$store.getters.getShopTotal;
    },
    shopMoney() {
      return this.$store.getters.getShopMoney;
    }
  },

Getter传参

在上面的例子我们可以返现,getter里面其实就是一个属性,我们当然可以让这些属性来接收一个函数。

在上面,我们发现,想计算利润的话需要在里面减去200,如果不同的超市,都想调用这个getter的话,但是成本不是200的話,就需要写好多函数,所以我们考虑getter可以接受参数。

 getters: {
   getShopMoney: function (state, getters) {
              return (zhichu) => {
                  return getters.getShopTotal - 200 - zhichu
              }
    }
   }
computed: {
    shopMoney() {
      return this.$store.getters.getShopMoney(100);
    }
  },

mapGetters 辅助函数

mapGetters 辅助函数仅仅是将 store 中的 getter 映射到局部计算属性,

  1. 引入mapGetters
import { mapGetters } from 'vuex'
  1. 使用
computed: {
  // 使用对象展开运算符将 getter 混入 computed 对象中
    ...mapGetters([
      'getShopTotal',
      'getShopMoney',
    ]),
    或者
      mapGetters({
    // 把 `this.shopTotal` 映射为 `this.$store.getters.getShopTotal`
    shopTotal: 'getShopTotal'
  })
  }


相关文章
Cesium系列:加载单个模型
Cesium如何加载单个三维模型数据
1131 0
|
缓存 Linux Shell
centos7安装字体和中文字体
centos7安装字体和中文字体
1887 0
|
存储 JavaScript API
vue3+ant design vue 自定义文件上传和自定义上传进度条
1.关键点是Upload组件中customRequest的API,它能通过覆盖默认的上传行为,可以自定义自己的上传实现(具体可看官方文档); 2.通过在Upload组件中绑定progress实现。 下面是详细代码
3540 0
|
3月前
|
机器学习/深度学习 人工智能 自然语言处理
B站开源IndexTTS2,用极致表现力颠覆听觉体验
在语音合成技术不断演进的背景下,早期版本的IndexTTS虽然在多场景应用中展现出良好的表现,但在情感表达的细腻度与时长控制的精准性方面仍存在提升空间。为了解决这些问题,并进一步推动零样本语音合成在实际场景中的落地能力,B站语音团队对模型架构与训练策略进行了深度优化,推出了全新一代语音合成模型——IndexTTS2 。
2234 62
|
定位技术
阿里架构总监一次讲透中台架构,13页PPT精华详解,建议收藏!
本文整理了阿里几位技术专家,如架构总监 谢纯良,中间件技术专家 玄难等几位大牛,关于中台架构的几次分享内容,将业务中台形态、中台全局架构、业务中台化、中台架构图、中台建设方法论、中台组织架构、企业中台建设实施步骤等总共13页PPT精华的浓缩,供大家学习借鉴。
38349 107
|
SQL 数据挖掘 Python
R中单细胞RNA-seq数据分析教程 (1)
R中单细胞RNA-seq数据分析教程 (1)
R中单细胞RNA-seq数据分析教程 (1)
|
6月前
|
JSON 供应链 API
商品条码查询 API 实战指南:掌握商品“唯一身份标识”
商品条码查询API简介:基于1974年诞生的条码技术,该API通过输入13/14位条码,快速获取商品基本信息(名称、品牌、规格等)和成分信息(营养成分、配料表等)。其核心功能包括商品条码查询接口与成分查询接口,广泛应用于零售、电商、物流及健康饮食等领域。支持HTTP POST请求,提供便捷的代码调用示例。作为数字化转型的重要工具,它不仅方便消费者查询商品详情,还助力商家优化库存管理与销售流程,提升运营效率。
1641 3
|
存储 缓存 数据可视化
Cesium渲染一帧中用到的图形技术
Cesium渲染一帧中用到的图形技术
605 0
Cesium渲染一帧中用到的图形技术
|
域名解析 弹性计算 应用服务中间件
玩转Linux系统【五】安装Nginx搭建网站
Nginx("engine x")是一款是由俄罗斯的程序设计师Igor Sysoev所开发高性能的 Web和 反向代理 服务器,也是一个 IMAP/POP3/SMTP 代理服务器。 在高连接并发的情况下,Nginx是Apache服务器不错的替代品。
625 0
玩转Linux系统【五】安装Nginx搭建网站
|
网络协议 Ubuntu Linux