解决$store.getters调用不执行的问题


Posted in Javascript onNovember 08, 2019

api:https://vuex.vuejs.org/zh/guide/getters.html

场景:

在登录时将登录得到的用户信息存储在vuex的state和sessionStorage中。使用时在state中获取,当因为刷新等原因导致state中没有数据时,去sissionStorage中获取。

错误:

登录后,需要获取用户信息时,getters中属性的方法不会执行。只是去getters中获取缓存

解决方法:

将getters中的属性改写成方法,这样每次调用的时候就会执行,去从新获取数据。

getloginInfor: (state) => () => {}

代码:

import Vue from 'vue'
import Vuex from 'vuex'
 
Vue.use(Vuex)
 
export default new Vuex.Store({
 state: {
 /* 登录用户信息 */
 loginInfor: {
 }
 },
 mutations: {
 setloginInfor (state, msg) {
  state.loginInfor = msg
 }
 },
 actions: {
 
 },
 getters: {
 getloginInfor: (state) => () => {
  // 先从state里面获取用户登录信息
  let loginInfo = state.loginInfo
  // 如果 state 里面获取不到,那么从localStorage里面获取
  if (!loginInfo) {
  loginInfo = JSON.parse(sessionStorage.getItem('loginInfo'))
  }
  return loginInfo
 }
 }
})

使用:

this.$store.getters.getloginInfor()

钻研不易,转载请注明出处。。。。。。

以上这篇解决$store.getters调用不执行的问题就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
JavaScript 中的replace方法说明
Apr 13 Javascript
一些javascript一些题目的解析
Dec 25 Javascript
jQuery链式操作如何实现以及为什么要用链式操作
Jan 17 Javascript
js中的push和join方法使用介绍
Oct 08 Javascript
JS正则表达式获取分组内容的方法详解
Nov 15 Javascript
利用jQuary实现文字浮动提示效果示例代码
Dec 26 Javascript
jQuery遍历json中多个map的方法
Feb 12 Javascript
footer定位页面底部(代码分享)
Mar 07 Javascript
jQuery加密密码到cookie的实现代码
Apr 18 jQuery
vue代理和跨域问题的解决
Jul 18 Javascript
使用express来代理服务的方法
Jun 21 Javascript
微信小程序自定义tabBar在uni-app的适配详解
Sep 30 Javascript
在Vue中使用this.$store或者是$route一直报错的解决
Nov 08 #Javascript
vue.js的状态管理vuex中store的使用详解
Nov 08 #Javascript
vue.js 子组件无法获取父组件store值的解决方式
Nov 08 #Javascript
VUEX采坑之路之获取不到$store的解决方法
Nov 08 #Javascript
vue路由拦截器和请求拦截器知识点总结
Nov 08 #Javascript
Vue打包后访问静态资源路径问题
Nov 08 #Javascript
在vue中使用echars实现上浮与下钻效果
Nov 08 #Javascript
You might like
基于文本的留言簿
2006/10/09 PHP
php实现的美国50个州选择列表实例
2015/04/20 PHP
PHP表单数据写入MySQL数据库的代码
2016/05/31 PHP
js判断是否为数组的函数: isArray()
2011/10/30 Javascript
TimergliderJS 一个基于jQuery的时间轴插件
2011/12/07 Javascript
让人印象深刻的10个jQuery手风琴效果应用
2012/05/08 Javascript
textarea 控制输入字符字节数(示例代码)
2013/12/27 Javascript
jQuery浏览器CSS3特写兼容实例
2015/01/19 Javascript
js使用setTimeout实现定时炸弹的方法
2015/04/10 Javascript
javascript获取网页宽高方法汇总
2015/07/19 Javascript
JavaScript的History API使搜索引擎抓取AJAX内容
2015/12/07 Javascript
jQuery遮罩层实例讲解
2017/05/11 jQuery
JavaScript转换数据库DateTime字段类型方法
2017/06/27 Javascript
JavaScript-定时器0~9抽奖系统详解(代码)
2017/08/16 Javascript
vue 中filter的多种用法
2018/04/26 Javascript
17道题让你彻底理解JS中的类型转换
2019/08/08 Javascript
Nuxt的路由配置和参数传递方式
2020/11/06 Javascript
[03:23]我的刀塔你不可能这么可爱 第一期金萌萌的故事
2014/06/20 DOTA
Python如何实现文本转语音
2016/08/08 Python
python目录与文件名操作例子
2016/08/28 Python
Python实现小数转化为百分数的格式化输出方法示例
2017/09/20 Python
对python使用telnet实现弱密码登录的方法详解
2019/01/26 Python
Python实现进度条和时间预估的示例代码
2020/06/02 Python
介绍一下#error预处理
2015/09/25 面试题
机电工程学生自荐信范文
2013/12/07 职场文书
好矿嫂事迹材料
2014/01/21 职场文书
2014年母亲节寄语
2014/05/07 职场文书
学生实习证明模板汇总
2014/09/25 职场文书
教师学习群众路线心得体会
2014/11/04 职场文书
2014年村官工作总结
2014/11/24 职场文书
人事任命通知
2015/04/20 职场文书
青年联谊会致辞
2015/07/31 职场文书
大学自主招生自荐信(2016精选篇)
2016/01/28 职场文书
《狮子和鹿》教学反思
2016/02/16 职场文书
Python基础之Socket通信原理
2021/04/22 Python
CentOS 7安装mysql5.7使用XtraBackUp备份工具命令详解
2022/04/12 MySQL