| | |
| | | |
| | | // 测试页面跳转 |
| | | setTimeout(() => { |
| | | this.gotoPage(4, 157); |
| | | this.gotoPage(3, 111); |
| | | // // setTimeout(() => { |
| | | // // this.renderSign("Highlight", { |
| | | // // id: "2ACA9359", |
| | |
| | | this.loadPageList.push(Number(page)); |
| | | const catalog = catalogDom.getAttribute("num"); |
| | | if (!this.questionDataMap[page]) { |
| | | |
| | | if (this.questionId && this.questionId[catalog]) { |
| | | |
| | | if (this.questionId[catalog][page]) { |
| | | |
| | | this.questionDataMap[page] = await this.getQuestion(catalog, page); |
| | | |
| | | console.log("题目", this.questionDataMap); |
| | | console.log(page,Array.isArray(this.questionId[catalog][page])); |
| | | if(Array.isArray(this.questionId[catalog][page])) { |
| | | this.questionDataMap[page] = await this.getQuestion(catalog, page,false); |
| | | } else { |
| | | const obj = {} |
| | | for (let key in this.questionId[catalog][page]) { |
| | | obj[key] = await this.getQuestion(catalog, page,key) |
| | | } |
| | | this.questionDataMap[page] = obj |
| | | } |
| | | } |
| | | } |
| | | } |
| | |
| | | }) |
| | | }, |
| | | // 获取章节题目 |
| | | async getQuestion(num, page) { |
| | | async getQuestion(num, page,questionIndex) { |
| | | let cardList = [ |
| | | { |
| | | catalogName: "单选题", |
| | |
| | | const res = await axios.get( |
| | | this.config.activeBook.resourceUrl + "/question-" + num + ".json" |
| | | ); |
| | | console.log(1, res); |
| | | if (!res.data) return []; |
| | | let ids = [] |
| | | questionIndex ? ids = this.questionId[num][page][questionIndex] : ids = this.questionId[num][page] |
| | | for (let index = 0; index < res.data.data.length; index++) { |
| | | const item = res.data.data[index]; |
| | | // 数学公式加类名去修改样式 |
| | |
| | | if (item.answer) item.answer = item.answer.replace(/\<math/gi, '<math class="examination-math"') |
| | | } |
| | | item.isCollect = this.collectId.indexOf(item.id) > -1 ? true : false |
| | | if (this.questionId[num][page].indexOf(item.id) > -1) { |
| | | if (ids.indexOf(item.id) > -1) { |
| | | if (item.type && item.type == "material") { |
| | | cardList.push(item); |
| | | } else { |
| | | if (item.questionType == "judge") { |
| | | cardList[1].infoList.push(item); |
| | | } else if (item.questionType == "singleChoice") { |
| | | } |
| | | if (item.questionType == "singleChoice") { |
| | | cardList[0].infoList.push(item); |
| | | } else if (item.questionType == "multipleChoice") { |
| | | } |
| | | if (item.questionType == "multipleChoice") { |
| | | cardList[2].infoList.push(item); |
| | | } else if (item.questionType == "completion") { |
| | | } |
| | | if (item.questionType == "completion") { |
| | | cardList[3].infoList.push(item); |
| | | } else if (item.questionType == "shortAnswer") { |
| | | } |
| | | if (item.questionType == "shortAnswer") { |
| | | cardList[4].infoList.push(item); |
| | | } |
| | | } |