当前位置:首页 > VUE

vue如何实现表格查询

2026-02-22 12:58:41VUE

Vue 表格查询实现方法

基于计算属性的前端过滤

通过计算属性对表格数据进行过滤,适用于数据量较小的场景。定义查询输入框绑定到 searchQuery,计算属性 filteredData 实时返回匹配结果。

<template>
  <input v-model="searchQuery" placeholder="搜索...">
  <table>
    <tr v-for="item in filteredData" :key="item.id">
      <td>{{ item.name }}</td>
      <td>{{ item.age }}</td>
    </tr>
  </table>
</template>

<script>
export default {
  data() {
    return {
      searchQuery: '',
      tableData: [
        { id: 1, name: '张三', age: 25 },
        { id: 2, name: '李四', age: 30 }
      ]
    }
  },
  computed: {
    filteredData() {
      return this.tableData.filter(item => 
        item.name.includes(this.searchQuery) || 
        item.age.toString().includes(this.searchQuery)
      )
    }
  }
}
</script>

使用第三方组件库

Element UI 或 Ant Design Vue 等库提供封装好的表格查询功能。以 Element UI 为例:

<template>
  <el-input v-model="searchQuery" placeholder="输入关键字"></el-input>
  <el-table :data="filteredData">
    <el-table-column prop="name" label="姓名"></el-table-column>
    <el-table-column prop="age" label="年龄"></el-table-column>
  </el-table>
</template>

后端接口查询

对于大数据量场景,通过 API 接口实现服务端查询:

methods: {
  async fetchData() {
    const res = await axios.get('/api/data', {
      params: { keyword: this.searchQuery }
    })
    this.tableData = res.data
  }
},
watch: {
  searchQuery() {
    this.fetchData()
  }
}

多条件高级查询

构建查询对象处理复杂条件:

data() {
  return {
    query: {
      name: '',
      age: null,
      dateRange: []
    }
  }
},
methods: {
  buildQueryParams() {
    const params = {}
    if (this.query.name) params.name = this.query.name
    if (this.query.age) params.age = this.query.age
    if (this.query.dateRange.length === 2) {
      params.startDate = this.query.dateRange[0]
      params.endDate = this.query.dateRange[1]
    }
    return params
  }
}

性能优化建议

对于大规模数据:

  • 使用防抖(debounce)控制搜索触发频率
  • 添加加载状态避免界面卡顿
  • 考虑分页加载数据

vue如何实现表格查询

分享给朋友:

相关文章

vue 实现表格单选

vue 实现表格单选

实现表格单选的方法 在Vue中实现表格单选功能可以通过多种方式完成,以下是几种常见的实现方法: 使用v-model绑定选中项 通过v-model绑定一个变量来记录当前选中的行数据。当用户点击某一行时…

vue 表格实现

vue 表格实现

Vue 表格实现方法 基础表格实现 使用 el-table 组件(Element UI)实现基础表格: <template> <el-table :data="tableDat…

vue底层如何实现

vue底层如何实现

Vue 底层的核心实现机制 Vue 的底层实现主要围绕响应式系统、虚拟 DOM 和组件化架构展开。以下是关键技术的详细解析: 响应式系统 依赖追踪与发布订阅模式 通过 Object.define…

vue实现表格数据修改

vue实现表格数据修改

实现表格数据修改的基本思路 在Vue中实现表格数据修改通常涉及以下核心步骤:数据绑定、编辑状态切换、表单输入处理和数据提交。以下是一个典型实现方案: 数据绑定与渲染 使用v-for指令循环渲染表格数…

国外vue实现表格控件

国外vue实现表格控件

以下是国外流行的 Vue 表格控件实现方案及特点,供参考: vue-good-table 基于 Vue 2/3 的轻量级表格组件,支持排序、分页、筛选等功能。 安装方式: npm inst…

vue如何实现曲线图

vue如何实现曲线图

使用 ECharts 实现曲线图 在 Vue 项目中安装 ECharts 依赖: npm install echarts --save 引入 ECharts 并创建基础图表组件: <temp…