diff --git a/src/views/Design/components/Questions/FileUpload.vue b/src/views/Design/components/Questions/FileUpload.vue index 19a319e..7786628 100644 --- a/src/views/Design/components/Questions/FileUpload.vue +++ b/src/views/Design/components/Questions/FileUpload.vue @@ -34,7 +34,6 @@ const fileLimit = computed(() => { }; }); -console.log(fileLimit.value); /** * 上传文件 * @description 上传文件 @@ -75,7 +74,7 @@ function handleFileUpload() { // 上传文件 // 生成答案 - answer.value = files; + question.value.answer = files; } } } diff --git a/src/views/Design/components/Questions/hooks/useFileUploadHooks.ts b/src/views/Design/components/Questions/hooks/useFileUploadHooks.ts index 842e583..328afa5 100644 --- a/src/views/Design/components/Questions/hooks/useFileUploadHooks.ts +++ b/src/views/Design/components/Questions/hooks/useFileUploadHooks.ts @@ -1,7 +1,7 @@ import { ref } from 'vue'; -const answer = ref(); - +// const answer = ref(); +const answer = ref([]); /** * 文件限制 * @property {number} max - 最大文件大小 diff --git a/src/views/Survey/views/Preview/Index.vue b/src/views/Survey/views/Preview/Index.vue index 6868f4c..5ded15f 100644 --- a/src/views/Survey/views/Preview/Index.vue +++ b/src/views/Survey/views/Preview/Index.vue @@ -650,6 +650,12 @@ async function answer(callback, callbackBeforePage) { // 表单验证(当前页) const errors = questions.value.filter((question) => { const { config, answer, question_type: questionType, error } = question; + + console.log(answer, questionType, error); + // 单独 处理 图文 + if (questionType === 6) { + return; + } let isError = false; // 如果问题没有答案还有是必须填空的,就往下处理 // 2025/4/1新增 : 如果有 error 内容, 同样视为有错误 @@ -687,6 +693,13 @@ async function answer(callback, callbackBeforePage) { question.error = translatedText.value.PleaseInputAValue; } else if (answer && questionType === 2) { // 多选题 + // 选项数量 + + console.log(translatedText.value); + // isError = true; + // question.error = translatedText.value.PleaseSelectAtLeastOneOptions( + // config.min_select ? config.min_select : 0 + // ); } else if (answer && questionType === 10) { // 矩阵多选题 } else if (answer && questionType === 12) { @@ -701,7 +714,9 @@ async function answer(callback, callbackBeforePage) { if (Object.keys(answer).length < (+config.min_select || 0)) { // 选项数量 isError = true; - question.error = translatedText.value.PleaseSelectAtLeastOneOptions(config.min_select); + question.error = translatedText.value.PleaseSelectAtLeastOneOptions( + config.min_select ? config.min_select : 0 + ); } } else if (answer && questionType === 17) { // 恒定总和题 diff --git a/src/views/Survey/views/Preview/components/questions/PreviewFileUpload.vue b/src/views/Survey/views/Preview/components/questions/PreviewFileUpload.vue index 62ea279..ba67e49 100644 --- a/src/views/Survey/views/Preview/components/questions/PreviewFileUpload.vue +++ b/src/views/Survey/views/Preview/components/questions/PreviewFileUpload.vue @@ -3,16 +3,17 @@ import FileUpload from '@/views/Design/components/Questions/FileUpload.vue'; const questionIndex = defineModel('questionIndex', { default: NaN }); const answerIndex = computed(() => question.value.title); const question = defineModel('question', { default: () => {} }); -import { answer } from '@/views/Design/components/Questions/hooks/useFileUploadHooks'; +// import { answer } from '@/views/Design/components/Questions/hooks/useFileUploadHooks'; import { computed, watch } from 'vue'; const emit = defineEmits(['changeAnswer']); -watch(answer, () => { - // 暂时先将答案挂到 question,后续需要优化 - question.value.answer = answer.value; - // emit('changeAnswer', answer.value); - // console.log(`question`, question.value); -}); +// watch(answer, () => { +// // 暂时先将答案挂到 question,后续需要优化 +// question.value.answer = answer.value; +// console.log(question.value.answer); +// // emit('changeAnswer', answer.value); +// // console.log(`question`, question.value); +// });