用vue2写个简易分页器 1.定义全局的简易分页组件 2.当前是第一页的时候,“上一页”按钮不显示。当页数为 15 页时候,“下一页”按钮不显示。
时间: 2024-02-03 11:13:51 浏览: 49
Vue全局分页组件的实现代码
可以参考以下代码:
```vue
<template>
<div>
<button v-if="currentPage > 1" @click="prevPage">上一页</button>
<button v-if="currentPage < 15" @click="nextPage">下一页</button>
</div>
</template>
<script>
export default {
name: 'SimplePaginator',
props: {
currentPage: {
type: Number,
required: true
}
},
methods: {
prevPage() {
this.$emit('update:currentPage', this.currentPage - 1);
},
nextPage() {
this.$emit('update:currentPage', this.currentPage + 1);
}
}
}
</script>
```
在父组件中使用该组件,并传入当前页数:
```vue
<template>
<div>
<SimplePaginator :currentPage="currentPage" @update:currentPage="onPageChange" />
<p>当前页数:{{ currentPage }}</p>
</div>
</template>
<script>
import SimplePaginator from './SimplePaginator.vue';
export default {
name: 'App',
components: {
SimplePaginator
},
data() {
return {
currentPage: 1
}
},
methods: {
onPageChange(pageNumber) {
this.currentPage = pageNumber;
}
}
}
</script>
```
注意,我们在子组件中通过 `$emit` 把页数变化的事件向上传递给父组件,从而在父组件中更新当前页数。
阅读全文