From be1ba877cd80c1eb2f0d3f6cd42bb897ec885687 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=92=B1=E5=86=A0=E5=AD=A6?= <1109935898@qq.com> Date: Mon, 24 Jun 2024 10:30:38 +0800 Subject: [PATCH 1/2] =?UTF-8?q?=E9=97=AE=E5=8D=B7=E9=A2=84=E8=A7=88?= =?UTF-8?q?=EF=BC=8C=E5=BD=93=E5=87=BA=E7=8E=B0=E5=A4=9A=E4=B8=AA=EF=BC=8C?= =?UTF-8?q?=E9=80=89=E9=A1=B9=E9=9A=90=E8=97=8F=E9=80=BB=E8=BE=91=E6=97=B6?= =?UTF-8?q?=EF=BC=8C=E5=8F=AA=E6=9C=89=E6=9C=80=E5=90=8E=E4=B8=80=E4=B8=AA?= =?UTF-8?q?=E5=8F=AF=E8=83=BD=E4=BC=9A=E7=94=9F=E6=95=88=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/views/Answer/components/js/mock.js | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/src/views/Answer/components/js/mock.js b/src/views/Answer/components/js/mock.js index 088bd03e..6b3543d3 100644 --- a/src/views/Answer/components/js/mock.js +++ b/src/views/Answer/components/js/mock.js @@ -102,8 +102,13 @@ export default function answerMock(questionsData, page) { // 自动填写逻辑 autoFill(data.answer_info_autofill, logic); } else if (logic.skip_type === 4) { - // 选项隐藏逻辑 - updateOptionHidden(data.hide_options, logic); + // 只计算跳转后所在页面的隐藏逻辑,否则会出现只返回最后一道隐藏选项题目的情况,导致失效 + const toPage = page + 1 + const hasHiddenLogicQuizPage = data.pages.findIndex((page) => page.includes(logic.question_index)) + 1 + if (hasHiddenLogicQuizPage === toPage) { + // 选项隐藏逻辑 + updateOptionHidden(data.hide_options, logic); + } } }); // 更新问卷状态 From 8d2b8b4885608eca8bcbbd43fb7aec0cf0804270 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=92=B1=E5=86=A0=E5=AD=A6?= <1109935898@qq.com> Date: Tue, 25 Jun 2024 10:03:17 +0800 Subject: [PATCH 2/2] =?UTF-8?q?=E4=BD=9C=E7=AD=94=EF=BC=8C=E5=A4=9A?= =?UTF-8?q?=E9=A1=B9=E5=A1=AB=E7=A9=BA=E9=A2=98=EF=BC=8C=E5=BF=85=E7=AD=94?= =?UTF-8?q?=E4=B8=94=E7=AD=94=E6=A1=88=E4=B8=BA=E7=A9=BA=E6=A0=A1=E9=AA=8C?= =?UTF-8?q?=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/views/Answer/questions/QInputBlanks.vue | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/views/Answer/questions/QInputBlanks.vue b/src/views/Answer/questions/QInputBlanks.vue index 2f4a73fc..59b35b4f 100644 --- a/src/views/Answer/questions/QInputBlanks.vue +++ b/src/views/Answer/questions/QInputBlanks.vue @@ -122,6 +122,9 @@ export default defineComponent({ error = ""; } } + if (Object.keys(answer || {}).every((key) => !answer[key])) { + answer = null + } context.emit("update:error", error); context.emit("update:answer", answer); }