element-ui分页功能删除最后一条数据返回上一页

element-ui分页功能删除最后一条数据返回上一页

         // 为了在删除最后一页的最后一条数据时能成功跳转回最后一页的上一页(pageSize=1时不生效)
          let totalPage = Math.ceil((this.total - 1) / this.pageSize)
          let currentPage =
            this.currentPage > totalPage ? totalPage : this.currentPage
          this.currentPage = currentPage < 1 ? 1 : currentPage

完整代码

    user_delete(callback) {
      let postData = {}
      let data = []
      for (var i = 0; i < this.selectedList.length; i++) {
        data.push(this.selectedList[i].value)
      }
      postData.data = window.JSON.stringify(data)
      deleteTerminalUser(postData).then(res => {
        if (res.success == true) {
          // 为了在删除最后一页的最后一条数据时能成功跳转回最后一页的上一页(pageSize=1时不生效)
          let totalPage = Math.ceil((this.total - 1) / this.pageSize)
          let currentPage =
            this.currentPage > totalPage ? totalPage : this.currentPage
          this.currentPage = currentPage < 1 ? 1 : currentPage
          this.$notify({
            title: '成功',
            message: res.msg,
            type: 'success'
          })
        } else {
          this.$notify({
            title: '失败',
            message: res.msg,
            type: 'error'
          })
        }
        callback()
      })
      // this._user_find()
    },
### 配置 Element UI 的 Pagination 组件 为了使 `el-pagination` 每次仅展示6条数据,在定义分页组件时需指定属性 `page-size` 并将其设为6。此参数决定了每一页显示的数据量[^1]。 ```html <template> <div class="pagination-container"> <!-- 使用 :page-size 属性来控制每页显示的数量 --> <el-pagination @size-change="handleSizeChange" @current-change="handleCurrentChange" :current-page.sync="currentPage" :page-size="pageSize" layout="total, sizes, prev, pager, next, jumper" :total="totalRecords"> </el-pagination> </div> </template> <script> export default { data() { return { currentPage: 1, pageSize: 6, // 设置每页显示数量为6条 totalRecords: 0 // 总记录数 }; }, methods: { handleSizeChange(val) { console.log(`每页 ${val} 条`); this.pageSize = val; this.fetchData(); }, handleCurrentChange(val) { console.log(`当前页: ${val}`); this.currentPage = val; this.fetchData(); }, fetchData() { // 这里应该放置获取数据逻辑,比如调用API接口请求服务器端数据 // 假设已成功获得数据并更新到表格或其他容器内 } } }; </script> ``` 上述代码片段展示了如何通过设置 `:page-size="pageSize"` 和初始化 `data()` 函数内的 `pageSize` 变量值为6来达成目标。此外还包含了处理页面大小更改 (`handleSizeChange`) 和当前页码变动 (`handleCurrentChange`) 的方法,以及用于模拟实际应用中可能存在的异步加载操作的 `fetchData` 方法[^3]。 当遇到分页组件在特定情况下无法正常工作的问题时,可以尝试重置当前页至第一页,并刷新视图以确保分页器能够正确响应状态的变化[^4]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值