| | |
| | | import Cookies from 'js-cookie' |
| | | import userApi from '@/api/user' |
| | | import examPaperApi from '@/api/examPaper' |
| | | // initial state |
| | | const state = { |
| | | userName: Cookies.get('studentUserName'), |
| | |
| | | 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 |
| | | } |
| | |
| | | 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) { |
| | | // 如果不包含guide则重新获取 |
| | | 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) { |