diff --git a/packageB/train/practice/startPracticing.vue b/packageB/train/practice/startPracticing.vue index ec261df..1575fa9 100644 --- a/packageB/train/practice/startPracticing.vue +++ b/packageB/train/practice/startPracticing.vue @@ -1,7 +1,93 @@ @@ -13,9 +99,79 @@ const { $api, navTo, vacanciesTo, formatTotal, config } = inject('globalFunction import useUserStore from '@/stores/useUserStore'; import useDictStore from '@/stores/useDictStore'; -function jumps(url){ - navTo(url); -} +const radio = ref(''); +const radio2 = ref(''); +const checkList = ref([]); +const questionIndex = ref(1); +const correctIndex = ref(0); +const errorsIndex = ref(0); +const accuracyRate = ref(0); +const problemData = reactive([ + { + type:'single', + content:"君不见黄河之水天上来,下一句是?", + fraction:5, + trainChooses:"奔流到海不复回,朝如青丝暮成雪,人生得意须尽欢,莫使金樽空对月", + },{ + type:'multiple', + content:"以下哪些是欧姆定律的适用条件?", + fraction:8, + trainChooses:"线性电阻,恒定温度,金属导体,半导体材料", + + },{ + type:'judge', + content:"功率越大的电器,其电阻值越小", + fraction:2, + trainChooses:[ + "正确", + "错误", + ] + } +]); + +function selected(i){ + radio.value=i +}; +//多选 +function selected2(i){ + let arr=checkList.value.join(",") + if(arr.indexOf(i) !== -1){ + const index = checkList.value.indexOf(i); + if (index !== -1) { + checkList.value.splice(index, 1); + } + }else{ + checkList.value.push(i) + } +}; +function judgment(i){ + let arr=checkList.value.join(",") + if(arr.indexOf(i) !== -1){ + return true + }else{ + return false + } +}; +function selected3(i){ + radio2.value=i +}; +// 解析选项 +function parseOptions(options) { + if (!options) return []; + // 假设options是字符串格式,以分号分隔 + if (typeof options === 'string') { + return options.split(',').filter(opt => opt.trim()); + } + // 如果是数组,直接返回 + if (Array.isArray(options)) { + return options; + } + return []; +}; +function indexToLetter(index) { + // 将索引转换为对应的字母 + return String.fromCharCode(65 + index); +}; \ No newline at end of file