57 lines
1.2 KiB
Vue
57 lines
1.2 KiB
Vue
<docs>
|
||
---
|
||
order: 3
|
||
title:
|
||
zh-CN: 自定义下拉选项
|
||
en-US: Custom dropdown options
|
||
---
|
||
|
||
## zh-CN
|
||
|
||
自定义下拉选项,例如添加全部选项
|
||
|
||
## en-US
|
||
|
||
Customize dropdown options such as adding all options
|
||
</docs>
|
||
|
||
<template>
|
||
<a-pagination
|
||
v-model:current="current"
|
||
:page-size-options="pageSizeOptions"
|
||
:total="total"
|
||
show-size-changer
|
||
:page-size="pageSize"
|
||
@showSizeChange="onShowSizeChange"
|
||
>
|
||
<template #buildOptionText="props">
|
||
<span v-if="props.value !== '50'">{{ props.value }}条/页</span>
|
||
<span v-else>全部</span>
|
||
</template>
|
||
</a-pagination>
|
||
</template>
|
||
<script lang="ts">
|
||
import { defineComponent, ref } from 'vue';
|
||
|
||
export default defineComponent({
|
||
setup() {
|
||
const pageSizeOptions = ref<string[]>(['10', '20', '30', '40', '50']);
|
||
const current = ref(1);
|
||
const pageSizeRef = ref(10);
|
||
const total = ref(50);
|
||
const onShowSizeChange = (current: number, pageSize: number) => {
|
||
console.log(pageSize);
|
||
pageSizeRef.value = pageSize;
|
||
};
|
||
|
||
return {
|
||
pageSizeOptions,
|
||
current,
|
||
pageSize: pageSizeRef,
|
||
total,
|
||
onShowSizeChange,
|
||
};
|
||
},
|
||
});
|
||
</script>
|