当前位置:首页 > VUE

vue中实现分页查询

2026-01-21 15:34:04VUE

在Vue中实现分页查询

分页组件与数据绑定

使用第三方分页组件如Element UIel-pagination,或自定义分页组件。绑定current-pagepage-size到数据模型,监听current-changesize-change事件。

<el-pagination
  v-model:current-page="currentPage"
  v-model:page-size="pageSize"
  :total="total"
  @current-change="handleCurrentChange"
  @size-change="handleSizeChange"
/>

数据请求与参数传递

在Vue的methods中定义请求方法,将分页参数传递给后端API。通常需要currentPagepageSize参数。

vue中实现分页查询

methods: {
  fetchData() {
    axios.get('/api/data', {
      params: {
        page: this.currentPage,
        size: this.pageSize
      }
    }).then(response => {
      this.list = response.data.list;
      this.total = response.data.total;
    });
  }
}

处理分页事件

在分页事件触发时重新请求数据。current-change事件处理页码变化,size-change事件处理每页条数变化。

handleCurrentChange(val) {
  this.currentPage = val;
  this.fetchData();
},
handleSizeChange(val) {
  this.pageSize = val;
  this.fetchData();
}

初始加载与监听

createdmounted钩子中初始化数据,监听分页参数变化时自动触发请求。

vue中实现分页查询

created() {
  this.fetchData();
},
watch: {
  currentPage() {
    this.fetchData();
  },
  pageSize() {
    this.fetchData();
  }
}

后端接口配合

后端接口需支持分页参数,通常使用pagesize或类似参数。返回数据包含当前页的数据列表和总条数。

{
  "list": [...],
  "total": 100
}

自定义分页组件

若需自定义分页组件,可通过计算属性生成页码数组,结合v-for渲染页码按钮。

<div class="pagination">
  <button 
    v-for="page in pageNumbers" 
    :key="page"
    @click="goToPage(page)"
  >{{ page }}</button>
</div>
computed: {
  pageNumbers() {
    const pages = [];
    for (let i = 1; i <= Math.ceil(this.total / this.pageSize); i++) {
      pages.push(i);
    }
    return pages;
  }
}

标签: 分页vue
分享给朋友:

相关文章

简单实现vue

简单实现vue

Vue 的基本实现 创建一个简单的 Vue 应用需要引入 Vue 库,并编写基本的模板和数据绑定逻辑。 <!DOCTYPE html> <html lang="en"> &l…

vue课程实现

vue课程实现

Vue 课程实现方案 课程内容设计 Vue课程应从基础到高级逐步展开,涵盖Vue核心概念、组件化开发、状态管理、路由、构建工具等。基础部分包括Vue实例、模板语法、计算属性和侦听器。中级部分深入组件通…

实现vue框架

实现vue框架

Vue框架的基本实现 Vue是一个渐进式JavaScript框架,用于构建用户界面。以下是实现Vue框架的基本步骤: 安装Vue 通过CDN引入Vue是最简单的方式: <script src…

vue 实现templateurl

vue 实现templateurl

在 Vue 中,templateUrl 是 Angular 中的一个概念,用于指定外部 HTML 文件作为模板。Vue 本身不直接支持 templateUrl,但可以通过以下方法实现类似功能: 使用…

vue实现文字纠错

vue实现文字纠错

Vue实现文字纠错功能 实现文字纠错功能通常需要结合前端Vue框架和后端自然语言处理(NLP)服务。以下是几种常见的实现方法: 使用第三方API服务 注册并获取API密钥(如百度AI开放平台、腾讯云…

vue实现数据删除

vue实现数据删除

vue实现数据删除的方法 使用v-for和v-on指令 在Vue中可以通过v-for指令渲染列表数据,结合v-on指令监听删除事件。定义一个方法处理删除逻辑,通常使用splice方法从数组中移除指定项…