store.getters呼び出しが実行されていない問題を解決します。


api:https://vuex.vuejs.org/zh/guide/getters.html
シーン:
ログイン時にログインしたユーザ情報をvuexのstateとsession Strageに格納します。使用時にstateで取得し、リフレッシュなどでstateにデータがない場合は、sission Strageで取得します。
エラー:
ログイン後、ユーザ情報の取得が必要な場合、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は実行しない問題を呼び出しました。つまり、小編集は皆さんに全部の内容を共有しました。参考にしてもらいたいです。どうぞよろしくお願いします。