ZhangXianQiang
2024-07-05 98f494cf633e3acf5c20f3e9de0d708f2a6c2045
src/views/grade-list/index.vue
@@ -7,28 +7,35 @@
          <el-card class="h-full" :body-style="{ height: '100%' }">
            <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-tab">
                <!-- <div class="header-tab">
                  <el-tabs v-model="activeName" @tab-click="handleClick">
                    <el-tab-pane label="全部" name="1"></el-tab-pane>
                    <el-tab-pane label="已批改" name="2"></el-tab-pane>
                    <el-tab-pane label="未批改" name="3"></el-tab-pane>
                  </el-tabs>
                </div>
                </div> -->
                <div class="header-search flex items-center">
                  <el-input v-model="searchText" placeholder="请输入考试名称" :prefix-icon="Search" />
                  <el-button type="primary" class="ml-4">搜索</el-button>
                  <el-input v-model="searchText" placeholder="请输入考试名称" :prefix-icon="Search" maxlength="20"/>
                  <el-button type="primary" class="ml-4" @click="searchData">搜索</el-button>
                </div>
              </div>
              <div class="card-main flex-1 my-5 relative">
                <div class="main-content absolute top-0 bottom-0 left-0 right-0">
                  <DataList></DataList>
                <div class="main-content absolute top-0 bottom-0 left-0 right-0" v-loading="loading">
                  <DataList :dataList="dataList"></DataList>
                </div>
              </div>
              <div class="card-footer flex justify-center mb-7 shrink-0">
                <el-pagination background layout="prev, pager, next" :total="1000" />
                <el-pagination background layout="prev, pager, next"
                :total="dataList.length"
                :default-page-size="currentSize"
                :currentPage="currentIndex"
                :hide-on-single-page="true"
                @current-change="handleCurrentChange" />
              </div>
            </div>
          </el-card>
@@ -43,8 +50,37 @@
import NormalHeader from '@/components/NormalHeader/index.vue';
import DataList from './data-list/index.vue';
import { Search } from '@element-plus/icons-vue';
import { getGradeList } from '@/api/modules/grade.js';
const activeName = ref('1');
const searchText = ref('');
const loading = ref(false);
const dataList = ref([]);
const currentIndex = ref(1);
const currentSize = ref(10);
const getData = () => {
  loading.value = true;
  getGradeList({examName: searchText.value, pageIndex: currentIndex.value, pageSize: currentSize.value}).then(res => {
    dataList.value = res.data.list;
    loading.value = false;
  }).catch(err => {
    loading.value = false;
  });
};
getData();
const handleCurrentChange = () => {
  getData();
}
const searchData = () => {
  getData();
}
const handleClick = (tab, event) => {
};
</script>
@@ -53,5 +89,4 @@
:deep(.el-tabs__nav-wrap:after) {
  display: none;
}
</style>