提交 354c5e6d authored 作者: pengxiaohui's avatar pengxiaohui

feat: 增加课后习题模块和补偿阅读材料模块

上级 ef2779ab
<template> <template>
<el-collapse v-model="activeNames"> <el-collapse v-model="activeNames">
<el-collapse-item :title="item.name" :name="item.id" v-for="item in currentList" :key="item.id"> <el-collapse-item :title="item.name" :name="item.id" v-for="item in currentList" :key="item.id">
<ul> <ul v-if="item.id === '1'">
<li class="meterial-item" v-for="subItem in item.children" :key="subItem.id">
<p>{{subItem.file_name}}</p><i class="el-icon-download" @click="handleDownload(subItem)"></i>
</li>
</ul>
<u v-else>
<li v-for="subItem in item.children" :key="subItem.id" @click="handleClick(subItem)"> <li v-for="subItem in item.children" :key="subItem.id" @click="handleClick(subItem)">
<div class="name">{{ subItem.name }}</div> <div class="name">{{ subItem.name }}</div>
<div class="duration">{{ subItem.duration }}</div> <div class="duration">{{ subItem.duration }}</div>
...@@ -21,7 +26,7 @@ ...@@ -21,7 +26,7 @@
</template> </template>
</div> </div>
</li> </li>
</ul> </u>
</el-collapse-item> </el-collapse-item>
</el-collapse> </el-collapse>
</template> </template>
...@@ -74,6 +79,9 @@ export default { ...@@ -74,6 +79,9 @@ export default {
path: path, path: path,
query: { course_id: this.courseId, chapter_id: data.id, type } query: { course_id: this.courseId, chapter_id: data.id, type }
}) })
},
handleDownload(item) {
window.location.href = item.file_url
} }
} }
} }
...@@ -108,4 +116,14 @@ li { ...@@ -108,4 +116,14 @@ li {
color: #999; color: #999;
} }
} }
li.meterial-item{
display:flex;
p{
flex:1;
}
i{
padding:10px;
font-size:20px;
}
}
</style> </style>
...@@ -25,6 +25,11 @@ ...@@ -25,6 +25,11 @@
<el-tab-pane lazy label="课程内容"> <el-tab-pane lazy label="课程内容">
<course-chapter :courseId="courseId" :showProgress="true" :data="detail.chapters"></course-chapter> <course-chapter :courseId="courseId" :showProgress="true" :data="detail.chapters"></course-chapter>
</el-tab-pane> </el-tab-pane>
<el-tab-pane v-if="examList.length" lazy label="课后习题">
<ul class="exam-list">
<li v-for="item in examList" :key="item.id">{{item.name}}</li>
</ul>
</el-tab-pane>
<!-- <el-tab-pane lazy label="按考点学习"> <!-- <el-tab-pane lazy label="按考点学习">
<course-tag :courseId="courseId" @on-click="onTagClick"></course-tag> <course-tag :courseId="courseId" @on-click="onTagClick"></course-tag>
</el-tab-pane> --> </el-tab-pane> -->
...@@ -58,7 +63,8 @@ export default { ...@@ -58,7 +63,8 @@ export default {
return { return {
tabActive: 0, tabActive: 0,
loaded: false, loaded: false,
detail: {} detail: {},
examList: []
} }
}, },
computed: { computed: {
...@@ -90,6 +96,26 @@ export default { ...@@ -90,6 +96,26 @@ export default {
api api
.getCourse(this.courseId) .getCourse(this.courseId)
.then(response => { .then(response => {
if (response.chapters.length) {
const examList = []
response.chapters.forEach(item => {
item.children.forEach((it, index) => {
if (it.type === 9) {
examList.push(it)
item.children.splice(index, 1)
}
})
})
this.examList = examList
}
if (response.files && response.files.length) {
response.chapters.push({
id: '1',
name: '补充阅读材料',
children: response.files
})
}
console.log(response)
this.detail = response this.detail = response
}) })
.finally(() => { .finally(() => {
...@@ -173,4 +199,12 @@ export default { ...@@ -173,4 +199,12 @@ export default {
margin-left: 20px; margin-left: 20px;
width: 300px; width: 300px;
} }
.exam-list li{
padding:5px 0;
line-height:22px;
cursor:pointer;
&:hover {
color: #c01540;
}
}
</style> </style>
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论