bug:vue和element實現的后台分頁,當前是第二頁,點擊搜索,強制設置current-page為1,但是當前頁還是第二頁沒有改變。
- 1.頁面
el-pagination v-if="pageshow"
-
1 <el-pagination v-if="pageshow" @size-change="handleSizeChange" @current-change="handleCurrentChange" 2 :current-page="page" :page-sizes="[1, 2,5, 10]" :page-size="limit" 3 layout="total, sizes, prev, pager, next, jumper" :total="total"> 4 </el-pagination>
2.操作
這里element的分頁有個bug,就是在搜索過后的當前頁數據變化了,原本的分頁當前頁並不會改變,這就會遇見一個問題,首次展示停留在第5頁,搜索過后的數據並沒有5頁,不論前台分頁或后台分頁,頁面都會展示:暫無數據! 但其實是有數據的,只是額沒有第五頁的數據。所以在搜索的時候將當前頁設置為1。
- 3.使用v-if綁定數據,當每次搜索的時候就注銷掉前一個分頁Dom,畫面刷新完畢后,渲染一個同樣的分頁,重新渲染必須放到$nextTick中,這樣在使用分頁就不會出現問題了。
- 4.search是一個方法在methods中,調用的時候@click="search"綁定到 搜索按鈕上 就可以了
-
1 earch() { 2 this.page = 1 3 this.pageshow = false 4 this.getList() 5 this.$nextTick(() => { 6 this.pageshow = true 7 }) 8 }
頁面 el-pagination v-if="pageshow" <el-pagination v-if="pageshow" @size-change="handleSizeChange" @current-change="handleCurrentChange" :current-page="page" :page-sizes="[1, 2,5, 10]" :page-size="limit" layout="total, sizes, prev, pager, next, jumper" :total="total"> </el-pagination>1234操作這里element的分頁有個bug,就是在搜索過后的當前頁數據變化了,原本的分頁當前頁並不會改變,這就會遇見一個問題,首次展示停留在第5頁,搜索過后的數據並沒有5頁,不論前台分頁或后台分頁,頁面都會展示:暫無數據! 但其實是有數據的,只是額沒有第五頁的數據。所以在搜索的時候將當前頁設置為1。使用v-if綁定數據,當每次搜索的時候就注銷掉前一個分頁Dom,畫面刷新完畢后,渲染一個同樣的分頁,重新渲染必須放到$nextTick中,這樣在使用分頁就不會出現問題了。search是一個方法在methods中,調用的時候@click="search"綁定到 搜索按鈕上 就可以了 search() { this.page = 1 this.pageshow = false this.getList() this.$nextTick(() => { this.pageshow = true }) }————————————————版權聲明:本文為CSDN博主「jcat_李小黑」的原創文章,遵循 CC 4.0 BY-SA 版權協議,轉載請附上原文出處鏈接及本聲明。原文鏈接:https://blog.csdn.net/weixin_43216105/article/details/90044698