删除a-table自带分页

This commit is contained in:
linlihong 2024-09-10 10:57:30 +08:00
parent 9632a7bcce
commit 4c60ba4ca7
1 changed files with 99 additions and 103 deletions

View File

@ -34,116 +34,112 @@
</a-row> </a-row>
</div> </div>
<div class="tableContent" v-if="isShow"> <div class="tableContent" v-if="isShow">
<a-table :dataSource="tableData" :columns="tableLabel" bordered :loading="loading" size="middle" /> <a-table :dataSource="tableData" :columns="tableLabel" bordered :pagination="false" :loading="loading" size="middle" />
</div> </div>
</div> </div>
</template> </template>
<script lang="ts" setup> <script lang="ts" setup>
import { defHttp } from '/@/utils/http/axios'; import { defHttp } from '/@/utils/http/axios';
import { reactive, ref } from 'vue'; import { reactive, ref } from 'vue';
import type { UnwrapRef } from 'vue'; import type { UnwrapRef } from 'vue';
import { message } from 'ant-design-vue'; import { message } from 'ant-design-vue';
import type { Rule } from 'ant-design-vue/es/form'; import type { Rule } from 'ant-design-vue/es/form';
interface FormState { interface FormState {
name: string; name: string;
id: string; id: string;
} }
const search: UnwrapRef<FormState> = reactive({ const search: UnwrapRef<FormState> = reactive({
name: '', name: '',
id: '', id: '',
});
const isShow = ref(false);
const loading = ref(false);
const tableData = ref([]);
const tableLabel = ref([
{
title: '考试批次',
dataIndex: 'batch',
align: 'center',
key: 'batch',
},
{
title: '总分',
dataIndex: 'result',
align: 'center',
key: 'result',
},
{
title: '听力',
align: 'center',
dataIndex: 'listen',
key: 'listen',
},
{
title: '阅读',
dataIndex: 'reading',
align: 'center',
key: 'reading',
},
{
title: '写作',
dataIndex: 'writing',
align: 'center',
key: 'writing',
},
]);
const rules: Record<string, Rule[]> = {
name: [
{ required: true, message: '请输入学生姓名', trigger: 'change' }
],
id: [
{ required: true, message: '请输入学生学号', trigger: 'change' }
],
};
const url = ref({
getData: '/cet_4/getDataByStudent',
});
const formRef = ref();
const handleSearch = () => {
formRef.value.validate().then(async () => {
loading.value = true;
tableData.value = await defHttp.post({
url: url.value.getData,
params: search,
});
tableData.value = tableData.value.results;
console.log(tableData.value);
loading.value = false;
if (tableData.value.length > 0) {
isShow.value = true;
} else {
isShow.value = false;
message.warn('未查询到相关信息');
}
}); });
}; const isShow = ref(false);
const handleClear = () => { const loading = ref(false);
search.name = ''; const tableData = ref([]);
search.id = ''; const tableLabel = ref([
isShow.value = false; {
tableData.value = []; title: '考试批次',
}; dataIndex: 'batch',
align: 'center',
key: 'batch',
},
{
title: '总分',
dataIndex: 'result',
align: 'center',
key: 'result',
},
{
title: '听力',
align: 'center',
dataIndex: 'listen',
key: 'listen',
},
{
title: '阅读',
dataIndex: 'reading',
align: 'center',
key: 'reading',
},
{
title: '写作',
dataIndex: 'writing',
align: 'center',
key: 'writing',
},
]);
const rules: Record<string, Rule[]> = {
name: [{ required: true, message: '请输入学生姓名', trigger: 'change' }],
id: [{ required: true, message: '请输入学生学号', trigger: 'change' }],
};
const url = ref({
getData: '/cet_4/getDataByStudent',
});
const formRef = ref();
const handleSearch = () => {
formRef.value.validate().then(async () => {
loading.value = true;
tableData.value = await defHttp.post({
url: url.value.getData,
params: search,
});
tableData.value = tableData.value.results;
console.log(tableData.value);
loading.value = false;
if (tableData.value.length > 0) {
isShow.value = true;
} else {
isShow.value = false;
message.warn('未查询到相关信息');
}
});
};
const handleClear = () => {
search.name = '';
search.id = '';
isShow.value = false;
tableData.value = [];
};
</script> </script>
<style lang="less" scoped> <style lang="less" scoped>
.outside { .outside {
// //
background-color: #fff; background-color: #fff;
height: 100%; height: 100%;
.title { .title {
font-size: 20px; font-size: 20px;
color: #333; color: #333;
padding: 20px 20px 0 20px; padding: 20px 20px 0 20px;
}
.form {
padding-top: 20px;
}
.tableContent {
padding: 20px;
}
.infoContent {
padding: 20px;
border-bottom: 1px solid #f0f0f0;
}
} }
.form {
padding-top: 20px;
}
.tableContent {
padding: 20px;
}
.infoContent {
padding: 20px;
border-bottom: 1px solid #f0f0f0;
}
}
</style> </style>