Vuex的使用(五)——mapGetters的定义和用法[通俗易懂]

Vuex的使用(五)——mapGetters的定义和用法[通俗易懂]参考文档:https://vuex.vuejs.org/zh/guide/当需要在组件中使用多个getters时,可以利用mapGetters批量生成计算属性(新增文件路径为src\components\componentE.vue),代码如下:mapGetters用法gettersinvuex:{{param2}}引用上面创建的component-e查看效果(修改文件路径为src\main.js),代码如下:imp

大家好,又见面了,我是你们的朋友全栈君。

参考文档:https://vuex.vuejs.org/zh/guide/

当需要在组件中使用多个getters时,可以利用mapGetters批量生成计算属性(新增文件路径为src\components\componentE.vue,可以通过切换示例中注释的计算变量来查看对应的页面效果),代码如下:

<template>
    <div>
        <span>mapGetters用法</span>
        <br />
        <span>getters in vuex:{
  
  {param2}}</span>
    </div>
</template>

<script> import { 
      mapGetters } from "vuex"; export default { 
      name: "component-e", // 基础写法,与state基本相同,唯一的区别是state在引用时用的是this.$store.state[xxx],getters在引用时用的是this.$store.getters[xxx] // computed: { 
      // param2() { 
      // return this.$store.getters["param2"]; // } // } // 要注意的是,Vuex禁止开发者在mapGetters中对getters进行二次处理,所以以下写法是不行的(如果业务缺失需要,则应该采用上面的基础写法),控制台会提示:unknown getter: getters => getters.param2 // computed: mapGetters({ 
      // param2: getters => getters.param2 // }) // mapGetters允许的写法(这个写法无法对getters进行二次处理),与mapState基本相同,唯一的区别是需要import mapGetters,且创建的是mapGetters对象 // computed: mapGetters({ 
      // param2: "param2" // }) // 与mapState一样mapGetters也允许简化写法 // computed: mapGetters(["param2"]) // 与局部计算变量混用(mapGetters与mapState混用时也需要按照以下写法定义state和getters) computed: { 
      computedParam() { 
      return "computedParam"; }, ...mapGetters(["param2"]) } }; </script>

<style scoped> </style>

引用上面创建的component-e查看效果(修改文件路径为src\main.js),代码如下:

import Vue from 'vue'
import store from './store'
import ComponentA from './components/ComponentA.vue'
import ComponentB from './components/ComponentB.vue'
import ComponentC from './components/ComponentC.vue'
import ComponentD from './components/ComponentD.vue'
import ComponentE from './components/ComponentE.vue'

new Vue({ 
   
    el: '#app',
    store,
    components: { 
    ComponentA, ComponentB, ComponentC, ComponentD, ComponentE },
    template: '<div><component-a></component-a><component-b></component-b><component-c></component-c><component-d></component-d><component-e></component-e></div>'
});

运行后查看页面可以看到示例代码中通过mapGetters生成的几种计算属性之间没有任何区别。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/142871.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • Latex如何插入图片[通俗易懂]

    Latex如何插入图片[通俗易懂]在写报告或论文的过程中,几乎不可避免的要插入一些图片,并且根据不同情况及要求进行排版,例如如何插入单个图片、一行插入两张图片、插入两行两列图片等等。在此,汇总一下各种插入图片的方法。插入单个图片这种情况是最简单的了,当然使用latex排版时也要注意一些问题,比如相关宏包的引用、图片存放路径、图片尺寸及位置调整等,下面给出一例子。代码:\documentclass{article}\use…

    2022年6月10日
    51
  • kubernetes可以实现容器集群的哪些功能_hadoop高可用集群搭建

    kubernetes可以实现容器集群的哪些功能_hadoop高可用集群搭建二进制方式部署Kubernetes高可用集群文章目录二进制方式部署Kubernetes高可用集群1.环境准备1.1.Kubernetes高可用集群部署方式1.2.Kubernetes集群弃用docker容器1.3.Kubernetes集群所需的证书1.4.环境准备1.5.安装cfssl证书生成工具2.操作系统初始化配置3.部署Etcd集群3.1.使用cfssl证书工具生成etcd证书3.2.部署etcd集群4.部署Docker服务4.1.安装docker4.2.为docker创建systemctl启动脚本

    2025年8月28日
    4
  • 【ProseMirror学习笔记 3 】—— schema

    【ProseMirror学习笔记 3 】—— schemaschemaschema介绍nodetypesContentExpressionstodogroupMarksAttributesSerializationandParsing   schema介绍每个Prosemirrordocument都有一个与之相关的schema.这个schema描述了document中的的nodes类型,和nodes们的嵌套关系.例如,schema可以规定,顶级节点可以包含一个或者更多的blo

    2022年9月12日
    2
  • ice最新服务器号码,我的世界手机版ice服务器号是什么 ice服务器被炸另有隐情…

    ice最新服务器号码,我的世界手机版ice服务器号是什么 ice服务器被炸另有隐情…近日,一个名为ICE的《我的世界》服务器被其他玩家恶意毁坏了,里面的建筑变得残破不堪,而服务器的存档也仅仅只有数天前的。要知道,这些建筑是很多玩家用大量的时间制造,想要复原不是那么简单。当玩家们还在寻找炸ICE服务器的凶手时,3月25号下午《我的世界》手机论坛中就有一个玩家发了帖子,说服务器是它炸的,它是《迷你世界》的玩家。这个帖子发出去后,在短时间内评论了达到了上千个,也没有版主去管他,就这样这…

    2022年4月27日
    68
  • Python使用captcha制作验证码[通俗易懂]

    Python使用captcha制作验证码[通俗易懂]在使用Keras搭建验证码识别模型时,需要大量的验证码图片。在这里,使用captcha模块生成验证码图片,验证码图片名称为验证码上显示的字符串。1生成单张验证码图片并显示生成一张验证码的代码如下:fromcaptcha.imageimportImageCaptchaimportmatplotlib.pyplotaspltimportnumpyasnpimport……

    2022年9月20日
    4
  • mysql安装,mysql环境变量配置「建议收藏」

    mysql安装,mysql环境变量配置「建议收藏」mysql绿色版安装,mysql环境变量配置。小白都能学会的教程

    2025年5月23日
    1

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号