Skip to content

静态页面实现答题功能

约 770 字大约 3 分钟

VueHTML

2022-9-27

最近在做一个答题静态页面,页面需要有题目及其选项,右边需要有答题卡,当左边选择选项后,右边答题卡相应题目号需要有反馈。在初步了解Vue中 v-ifv-for后便开始了。

1.设置JSON格式的题目

将所有题目创建为数组,数组里有不同的题目对象,每个对象含有题目ID、问题描述、正确选项、题目解析,每个选项含有选择选项ID、选择状态、选项描述,同时创建一个数组用于存放我的选项,且用于后续答题卡选择状态判断。下面是一个题目JSON例子:

2.代码实现

利用双层v-for显示题目及其选项,利用v-if判断选择的选项与正确选项,若相等则选项显示绿色,否则为红色;再根据选项卡定义的数组判断该题目的选择状态。同时利用提交状态submit值判断提交状态,若提交则显示题目解析与答题卡答题情况。下面为某个题的部分代码:

根据上面代码则可在提交后判断选项正误,且显示题目解析。选项卡答题状态则只需根据选项卡数组来判断对应位置是否有值,并提交显示答题正误。
根据这种方式实现答题功能不难,但是非常非常非常麻烦,不仅要写大量JSON数据,还有很多复杂的判断与循环,所以写这篇博文的目的是什么呢??因为我做都做了,总要写点什么吧。🤢

img.png