feat: errorInfo to pinia (#353)
This commit is contained in:
parent
7ff691471b
commit
bd603eccfb
@ -14,13 +14,17 @@ import { computed } from 'vue'
|
||||
import { useStore } from 'vuex'
|
||||
// @ts-ignore
|
||||
import communalLoader from '@materials/communals/communalLoader.js'
|
||||
import { useErrorInfo } from '../stores/errorInfo'
|
||||
|
||||
const LogoIcon = communalLoader.loadComponent('LogoIcon')
|
||||
|
||||
const store = useStore()
|
||||
const {errorInfo} = useErrorInfo();
|
||||
|
||||
const errorImageUrl = computed(() => {
|
||||
const errorType = store.state?.errorInfo?.errorType
|
||||
// const errorType = store.state?.errorInfo?.errorType
|
||||
const errorType = errorInfo?.errorType
|
||||
|
||||
const imageMap = {
|
||||
overTime: '/imgs/icons/overtime.webp',
|
||||
default: '/imgs/icons/error.webp'
|
||||
@ -29,7 +33,10 @@ const errorImageUrl = computed(() => {
|
||||
return imageMap[errorType as 'overTime'] || imageMap.default
|
||||
})
|
||||
|
||||
const errorMsg = computed(() => store.state?.errorInfo?.errorMsg || '提交失败')
|
||||
// const errorMsg = computed(() => store.state?.errorInfo?.errorMsg || '提交失败')
|
||||
const errorMsg = computed(() => {
|
||||
return errorInfo?.errorMsg || '提交失败'
|
||||
})
|
||||
const logoConf = computed(() => store.state?.bottomConf || {})
|
||||
</script>
|
||||
<style lang="scss" scoped>
|
||||
|
@ -8,6 +8,7 @@ import adapter from '../adapter'
|
||||
import { RuleMatch } from '@/common/logicEngine/RulesMatch'
|
||||
import { useSurveyStore } from '@/render/stores/survey'
|
||||
import { useQuestionStore } from '@/render/stores/question'
|
||||
import { useErrorInfo } from '@/render/stores/errorInfo'
|
||||
/**
|
||||
* CODE_MAP不从management引入,在dev阶段,会导致B端 router被加载,进而导致C端路由被添加 baseUrl: /management
|
||||
*/
|
||||
@ -23,13 +24,20 @@ export default {
|
||||
init({ commit }, { bannerConf, baseConf, bottomConf, dataConf, skinConf, submitConf }) {
|
||||
const surveyStore = useSurveyStore()
|
||||
const questionStore = useQuestionStore()
|
||||
const { setErrorInfo } = useErrorInfo()
|
||||
|
||||
surveyStore.setEnterTime()
|
||||
const { begTime, endTime, answerBegTime, answerEndTime } = baseConf
|
||||
const { msgContent } = submitConf
|
||||
const now = Date.now()
|
||||
if (now < new Date(begTime).getTime()) {
|
||||
router.push({ name: 'errorPage' })
|
||||
commit('setErrorInfo', {
|
||||
// commit('setErrorInfo', {
|
||||
// errorType: 'overTime',
|
||||
// errorMsg: `<p>问卷未到开始填写时间,暂时无法进行填写<p/>
|
||||
// <p>开始时间为: ${begTime}</p>`
|
||||
// })
|
||||
setErrorInfo({
|
||||
errorType: 'overTime',
|
||||
errorMsg: `<p>问卷未到开始填写时间,暂时无法进行填写<p/>
|
||||
<p>开始时间为: ${begTime}</p>`
|
||||
@ -37,7 +45,11 @@ export default {
|
||||
return
|
||||
} else if (now > new Date(endTime).getTime()) {
|
||||
router.push({ name: 'errorPage' })
|
||||
commit('setErrorInfo', {
|
||||
// commit('setErrorInfo', {
|
||||
// errorType: 'overTime',
|
||||
// errorMsg: msgContent.msg_9001 || '您来晚了,感谢支持问卷~'
|
||||
// })
|
||||
setErrorInfo({
|
||||
errorType: 'overTime',
|
||||
errorMsg: msgContent.msg_9001 || '您来晚了,感谢支持问卷~'
|
||||
})
|
||||
@ -49,7 +61,12 @@ export default {
|
||||
const momentEndTime = moment(`${todayStr} ${answerEndTime}`)
|
||||
if (momentNow.isBefore(momentStartTime) || momentNow.isAfter(momentEndTime)) {
|
||||
router.push({ name: 'errorPage' })
|
||||
commit('setErrorInfo', {
|
||||
// commit('setErrorInfo', {
|
||||
// errorType: 'overTime',
|
||||
// errorMsg: `<p>不在答题时间范围内,暂时无法进行填写<p/>
|
||||
// <p>答题时间为: ${answerBegTime} ~ ${answerEndTime}</p>`
|
||||
// })
|
||||
setErrorInfo({
|
||||
errorType: 'overTime',
|
||||
errorMsg: `<p>不在答题时间范围内,暂时无法进行填写<p/>
|
||||
<p>答题时间为: ${answerBegTime} ~ ${answerEndTime}</p>`
|
||||
|
22
web/src/render/stores/errorInfo.js
Normal file
22
web/src/render/stores/errorInfo.js
Normal file
@ -0,0 +1,22 @@
|
||||
import { ref } from 'vue'
|
||||
import { defineStore } from 'pinia'
|
||||
|
||||
export const useErrorInfo = defineStore('errorInfo', () => {
|
||||
const errorInfo = ref( {
|
||||
errorType: '',
|
||||
errorMsg: ''
|
||||
})
|
||||
|
||||
const setErrorInfo = ( { errorType, errorMsg }) => {
|
||||
errorInfo.value = {
|
||||
errorType,
|
||||
errorMsg
|
||||
}
|
||||
};
|
||||
|
||||
return {
|
||||
errorInfo,
|
||||
|
||||
setErrorInfo
|
||||
}
|
||||
})
|
Loading…
Reference in New Issue
Block a user