From 5e4bed2d67b26eeb7eab4d176bfabe3f527836e4 Mon Sep 17 00:00:00 2001 From: yj <2077506045@qq.com> Date: 星期五, 19 七月 2024 13:48:29 +0800 Subject: [PATCH] 修复答题刷新与CAQ分片2从第2题开始bug --- src/store/modules/user.js | 49 +++++++++++++++++++++++++++++++++++++++++-------- 1 files changed, 41 insertions(+), 8 deletions(-) diff --git a/src/store/modules/user.js b/src/store/modules/user.js index bb42548..34247b6 100644 --- a/src/store/modules/user.js +++ b/src/store/modules/user.js @@ -1,13 +1,17 @@ import Cookies from 'js-cookie' import userApi from '@/api/user' +import examPaperApi from '@/api/examPaper' // initial state const state = { userName: Cookies.get('studentUserName'), userInfo: Cookies.get('studentUserInfo'), imagePath: Cookies.get('studentImagePath'), + logo: null, messageCount: 0, memberToken: Cookies.get('memberTocken'), - langType: 'English', + // langType: localStorage.getItem('langType') || 'English', + langType: Cookies.get('langType') || 'English', + formDo: localStorage.getItem('formDo') && JSON.parse(localStorage.getItem('formDo')), langFlag: true, memberId: null } @@ -28,6 +32,9 @@ // mutations const mutations = { + setLogo (state, logo) { + state.logo = logo + }, setUserName (state, userName) { state.userName = userName Cookies.set('studentUserName', userName, { expires: 30 }) @@ -39,22 +46,48 @@ setMemberId (state, memberId) { state.memberId = memberId }, + + setFormDo (state, formDo) { + if (formDo) { + localStorage.setItem('formDo', JSON.stringify(formDo), { expires: 30 }) + } else { + localStorage.setItem('formDo', formDo, { expires: 30 }) + } + state.formDo = formDo + }, + getFormDo (state) { + // 濡傛灉涓嶅寘鍚玤uide鍒欓噸鏂拌幏鍙� + if (!state.formDo || !Object.hasOwn(state.formDo, 'guide')) { + state.formDo = localStorage.getItem('formDo') && JSON.parse(localStorage.getItem('formDo')) + if (state.formDo && Object.hasOwn(state.formDo, 'guide')) { + return + } + if (!state.memberToken || !state.langType) { + return + } + examPaperApi.select(state.memberToken, state.langType).then(re => { + state.formDo = re.response + localStorage.setItem('formDo', JSON.stringify(state.formDo), { expires: 30 }) + }).catch(e => { + console.error('鑾峰彇formDo澶辫触', e) + }) + } + }, setLangType (state, paraLangType) { state.langType = paraLangType - if(paraLangType == 'Chinese'){ - Cookies.set('language', 'zh', { expires: 30 }) - } else { - Cookies.set('language', 'en', { expires: 30 }) - } + Cookies.set('langType', paraLangType, { expires: 30 }) + if (paraLangType === 'Chinese') { + Cookies.set('language', 'zh', { expires: 30 }) + } else { + Cookies.set('language', 'en', { expires: 30 }) + } }, getLangType () { let language = (navigator.language || navigator.browserLanguage).toLowerCase() if (language === 'zh-cn') { state.langType = 'Chinese' - console.log(language) } else { state.langType = 'English' - console.log(language) } }, setLangFlag (state, paraLangFlag) { -- Gitblit v1.9.1