vuex中Getter的用法详解

 更新时间:2021年07月06日 11:52:46   作者:https://blog.csdn.net/shshanling/article/details/89980964  
这篇文章主要给大家介绍了关于Vuex中Getter的基本使用教程,getter相当于Vuex中的计算属性 对 state 做处理再返回,本文通过示例代码将Getter介绍的非常详细,需要的朋友可以参考下

前言

Vuex 允许我们在 store 中定义“getter”(可以认为是 store 的计算属性)。就像计算属性一样,getter 的返回值会根据它的依赖被缓存起来,且只有当它的依赖值发生了改变才会被重新计算。

以官网的例子来说明,官网代码如下:

 

在组件中使用以下代码访问:

this.$store.getters.doneTodosCount

一、说明

getters中的访问器函数,默认会传递2个参数(state, getters),使用第一个参数state可以访问数据,使用getters参数可以访问访问器中的其它访问器函数。大部分情况下只需要使用第一个参数,定义访问器函数就只写第一个参数即可,就像上面的例子。访问这些访问器属性时,就像是组件中的计算属性一样调用,而不是像函数调用一样。

这是有第二个参数getters时的使用例子,在组件中直接使用下面的代码调用,就像调用计算属性一样。第2个参数系统会默认传递。

this.$store.getters.doneTodos

 二、getter返回一个函数

通过让 getter 返回一个函数,来实现给 getter 传参。因此它的主要作用是传递参数。

在组件中直接访问 this.$store.getters.getTodoById时,返回的是一个函数。然后再进行函数调用的方式传递参数进去,就得到了函数的结果。

 三、使用mapGetters 对象展开

在组件的计算属性中,直接使用以下方式,可以很方便的引用getter属性,然后就像调用普通的计算属性一样的使用。

如果你想将一个 getter 属性另取一个名字,使用对象形式:

这些知识点,光看文档有时候会很难理解,手动实践一下,会很容易的消化理解。

vuex getter传参方法

getters: {
    getProductByid: (state) => (id) =>
    {
        return state.productList.find(item => item.id === id);
    }
}

在使用了namespace的情况下调用:

this.$store.getters['yournamespace/getProductByid'](id);

在未使用namespace的情况下调用:

this.$store.getters.getProductByid(id);

总结

到此这篇关于vuex中Getter用法的文章就介绍到这了,更多相关Vuex Getter用法内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • 使用van-picker 动态设置当前选中项

    使用van-picker 动态设置当前选中项

    这篇文章主要介绍了使用van-picker 动态设置当前选中项方式,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-10-10
  • Element Dropdown下拉菜单的使用方法

    Element Dropdown下拉菜单的使用方法

    这篇文章主要介绍了Element Dropdown下拉菜单的使用方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-07-07
  • vue3中使用router路由实现跳转传参的方法

    vue3中使用router路由实现跳转传参的方法

    这篇文章主要介绍了vue3中使用router路由实现跳转传参的方法,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2023-03-03
  • Vue + Axios 请求接口方法与传参方式详解

    Vue + Axios 请求接口方法与传参方式详解

    使用Vue的脚手架搭建的前端项目,通常都使用Axios封装的接口请求,项目中引入的方式不做多介绍,本文主要介绍接口调用与不同形式的传参方法。对Vue + Axios 请求接口方法与传参问题感兴趣的朋友一起看看吧
    2021-12-12
  • VUE 文字转语音播放的实现示例

    VUE 文字转语音播放的实现示例

    本文主要介绍了VUE 文字转语音播放的实现示例,文中通过示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2022-02-02
  • vue自定义移动端touch事件之点击、滑动、长按事件

    vue自定义移动端touch事件之点击、滑动、长按事件

    这篇文章主要介绍了vue自定义移动端touch事件之点击、滑动、长按事件的实例代码,需要的朋友可以参考下
    2018-07-07
  • 基于vue.js中关于下拉框的值默认及绑定问题

    基于vue.js中关于下拉框的值默认及绑定问题

    今天小编就为大家分享一篇基于vue.js中关于下拉框的值默认及绑定问题,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-08-08
  • npm install时卡住不动的五种解决方法

    npm install时卡住不动的五种解决方法

    在我们安装完Node.js之后,需要使用npm命令来安装一些工具,下面这篇文章主要给大家介绍了关于npm install时卡住不动的五种解决方法,需要的朋友可以参考下
    2023-06-06
  • 使用vue3+ts+setup获取全局变量getCurrentInstance的方法实例

    使用vue3+ts+setup获取全局变量getCurrentInstance的方法实例

    这篇文章主要给大家介绍了关于使用vue3+ts+setup获取全局变量getCurrentInstance的相关资料,文中通过实例代码介绍的非常详细,对大家学习或者使用vue3具有一定的参考学习价值,需要的朋友可以参考下
    2022-08-08
  • 在Vue中使用WebScoket 会怎么样?

    在Vue中使用WebScoket 会怎么样?

    这篇文章主要介绍了在Vue中使用WebScoket,网络的不稳定而断开连接,webscoket不会出现异常,下面就一起进入文章看看吧
    2022-01-01

最新评论