From 84659b2d8d9c839903988b59905c6e6c338c5e71 Mon Sep 17 00:00:00 2001 From: luohairen <3399054449@qq.com> Date: 星期四, 07 十一月 2024 09:16:38 +0800 Subject: [PATCH] 错题展示 --- src/views/wrong-list/index.vue | 44 +++++++++++++-------- src/api/modules/wrong.js | 4 +- src/views/wrong-list/data-list/index.vue | 42 ++++++++++----------- 3 files changed, 49 insertions(+), 41 deletions(-) diff --git a/src/api/modules/wrong.js b/src/api/modules/wrong.js index a6f9243..87cd66c 100644 --- a/src/api/modules/wrong.js +++ b/src/api/modules/wrong.js @@ -1,5 +1,5 @@ import service from "@/api"; -export const getWrongList = (postData = {examName: '', pageIndex: 1, pageSize: 10}) => { - return service.post('/api/student/wrong/pageList',postData); +export const page = (postData = {examName: ''}) => { + return service.post('/api/student/wrong/page',postData); } \ No newline at end of file diff --git a/src/views/wrong-list/data-list/index.vue b/src/views/wrong-list/data-list/index.vue index 92856ce..c32bc52 100644 --- a/src/views/wrong-list/data-list/index.vue +++ b/src/views/wrong-list/data-list/index.vue @@ -3,7 +3,7 @@ <el-scrollbar> <el-table v-loading="loading" - :data="tableData" + :data="dataList" border :row-style="{height:'42px'}" :cell-style="{padding: '0'}" @@ -18,7 +18,8 @@ label="棰樺瀷" align="center" width="100px" - prop="questionTypeName" + prop="questionType" + :formatter="questionTypeFormatter" ></el-table-column> <el-table-column align="center" @@ -48,38 +49,21 @@ </template> </el-table-column> </el-table> - - <pagination v-show="total>0" :total="total" :page.sync="searchForm.currentPage" - :limit.sync="searchForm.pageSize" - @pagination="dataList"/> </el-scrollbar> </div> </template> <script setup> import { ref } from 'vue'; -import { Timer } from '@element-plus/icons-vue'; -import { useRouter } from 'vue-router'; -import { useExamStore } from '@/store/index.js'; -import { getExamInfo } from '@/api/modules/exam.js'; -const loading = ref(false); -const tableData = ref([]); -const total = ref(0); -const searchForm = ref({ - currentPage: 1, - pageSize: 10 -}); - -// const router = useRouter(); - +// dataList const props = defineProps({ dataList: { type: Array, default: () => [] } }); - +const loading = ref(false); const checkWrong = (id) => { router.push({ @@ -90,8 +74,22 @@ }); }; -</script> +// 棰樼洰绫诲瀷鏍煎紡鍖� +const questionTypeFormatter = (row,column,cellValue) => { + const typeMap = { + 1: '鍗曢�夐', + 2: '澶氶�夐', + 3: '鍒ゆ柇棰�', + 4: '濉┖棰�', + 5: '绠�绛旈', + 6: '璇煶棰�', + 7: '璁$畻棰�', + 8: '鍒嗘瀽棰�' + }; + return typeMap[cellValue]; +} +</script> <style lang="scss" scoped> .item { width: 100%; diff --git a/src/views/wrong-list/index.vue b/src/views/wrong-list/index.vue index e0c48d3..415a098 100644 --- a/src/views/wrong-list/index.vue +++ b/src/views/wrong-list/index.vue @@ -9,8 +9,8 @@ <div class="card-wrapper w-full h-full flex flex-col px-8 box-border"> <div class="card-header flex justify-between items-center shrink-0"> <div class="header-search flex items-center"> - <el-input v-model="searchText" placeholder="璇疯緭鍏ヨ�冭瘯鍚嶇О" :prefix-icon="Search" maxlength="20" @input="searchData"/> - <el-button type="primary" class="ml-4" @click="searchData">鎼滅储</el-button> +<!-- <el-input v-model="searchText" placeholder="璇疯緭鍏ヨ�冭瘯鍚嶇О" :prefix-icon="Search" maxlength="20" @input="searchData"/>--> +<!-- <el-button type="primary" class="ml-4" @click="searchData">鎼滅储</el-button>--> </div> </div> @@ -21,10 +21,10 @@ </div> <div class="card-footer flex justify-center mb-7 shrink-0"> - <el-pagination background layout="prev, pager, next" :total="dataList.length" - :default-page-size="20" - :currentPage="currentIndex" - :hide-on-single-page="true" + <el-pagination background layout="prev, pager, next" + :total="pageParam.total" + :page-size="10" + :current-page="pageParam.pageIndex" @current-change="handleCurrentChange"/> </div> </div> @@ -37,41 +37,51 @@ <script setup> import { ref } from 'vue'; - import NormalHeader from '@/components/NormalHeader/index.vue'; import DataList from './data-list/index.vue'; -import { getWrongList } from '@/api/modules/wrong.js'; +import { page } from '@/api/modules/wrong.js'; - -const searchText = ref(''); -const currentIndex = ref(1); const dataList = ref([]); - const loading = ref(false); +const currentData = ref([]); + +// 鍒嗛〉鍙傛暟 +const pageParam = { + pageIndex: 1, + pageSize: 10, + total: 0 +}; + + const getData = () => { loading.value = true; - getWrongList({ examName: searchText.value }).then(res => { + page().then(res => { dataList.value = res.data; loading.value = false; }).catch(err => { loading.value = false; }); }; +// 椤甸潰鍒囨崲 +const handleCurrentChange = (pageIndex) => { + pageParam.pageIndex = pageIndex; // 鏇存柊椤电爜 + const currentData = getPaginatedData(); // 鑾峰彇褰撳墠椤垫暟鎹� + updateView(currentData); // 鏇存柊瑙嗗浘 +} + getData(); + const searchData = () => { getData(); -}; +} const handleClick = (tab, event) => { }; -const handleCurrentChange = (val) => { - getData(); -} </script> <style lang="scss" scoped> -- Gitblit v1.8.0