鍍金池/ 問答/數(shù)據(jù)庫  HTML/ 小程序考試下一題切換功能實(shí)現(xiàn)?

小程序考試下一題切換功能實(shí)現(xiàn)?

小程序下一題切換功能,大家有什么好的方式解決嘛?由于每個(gè)題目類型都是一個(gè)單獨(dú)的對(duì)象,題在單獨(dú)的數(shù)組里面,所以通過下標(biāo)是不現(xiàn)實(shí),
圖片描述

數(shù)據(jù)結(jié)構(gòu)類型

clipboard.png

題目數(shù)據(jù)結(jié)構(gòu)

clipboard.png

回答
編輯回答
情皺

可以貼下你題目的數(shù)據(jù)結(jié)構(gòu)嗎
//修改

//偽代碼

var data = {....}; //你的答題數(shù)據(jù)

var nowQues = null; //當(dāng)前題目
var nowQuesArr = [];//當(dāng)前答題類型的數(shù)組 在請(qǐng)求到題目數(shù)據(jù)時(shí)就更新這個(gè)值 如要先答單選,就只取出單選數(shù)組
var quesLen = nowQuesArr.length; //當(dāng)前答題數(shù)組長(zhǎng)度
var count = 0; //計(jì)數(shù)器
nextBtn.click = function(){
    count ++;
    nowQues =  nowQuesArr[i];   //下一步按鈕點(diǎn)擊的時(shí)候更新count值,對(duì)應(yīng)更新當(dāng)前題目;
    if(count > nowQuesArr .length){
        if(data.qsMiddleList.length>0){
            this.nowQuesArr = data.qsMiddleLis; //如果單選題答完了就判斷 -判斷題-數(shù)組的長(zhǎng)度,有就對(duì)應(yīng)更新當(dāng)前答題數(shù)組
            count = 0; //重置計(jì)數(shù)器
        }
        else if(data.complexList.length>0){
             this.nowQuesArr = data.qsMiddleLis;
             count = 0; //重置計(jì)數(shù)器
        }
    }
}

//依然可以用數(shù)組下表去切換題目,只是每個(gè)類型的最后一題時(shí)判斷下個(gè)類型的題目長(zhǎng)度
所寫代碼只是提供思路
2017年4月12日 23:57