当前位置:首页 > VUE

vue怎么实现table切换

2026-02-21 03:14:55VUE

实现 Vue 中表格切换功能

使用动态组件切换表格

通过 Vue 的 component 动态组件实现表格切换,结合 :is 属性绑定当前显示的表格组件。

<template>
  <div>
    <button @click="currentTable = 'TableA'">显示表格A</button>
    <button @click="currentTable = 'TableB'">显示表格B</button>
    <component :is="currentTable" />
  </div>
</template>

<script>
import TableA from './TableA.vue'
import TableB from './TableB.vue'

export default {
  components: { TableA, TableB },
  data() {
    return {
      currentTable: 'TableA'
    }
  }
}
</script>

使用条件渲染切换表格

利用 v-ifv-else 指令根据条件显示不同的表格组件。

<template>
  <div>
    <button @click="showTableA = true">显示表格A</button>
    <button @click="showTableA = false">显示表格B</button>
    <TableA v-if="showTableA" />
    <TableB v-else />
  </div>
</template>

<script>
import TableA from './TableA.vue'
import TableB from './TableB.vue'

export default {
  components: { TableA, TableB },
  data() {
    return {
      showTableA: true
    }
  }
}
</script>

使用路由切换表格

在 Vue Router 中配置不同路由对应不同表格组件,通过导航切换。

// router.js
import TableA from './views/TableA.vue'
import TableB from './views/TableB.vue'

const routes = [
  { path: '/table-a', component: TableA },
  { path: '/table-b', component: TableB }
]
<!-- App.vue -->
<template>
  <div>
    <router-link to="/table-a">表格A</router-link>
    <router-link to="/table-b">表格B</router-link>
    <router-view></router-view>
  </div>
</template>

使用同一组件切换数据源

通过改变数据源实现同一表格组件显示不同内容。

<template>
  <div>
    <button @click="loadData('dataA')">加载数据A</button>
    <button @click="loadData('dataB')">加载数据B</button>
    <table>
      <tr v-for="(item, index) in tableData" :key="index">
        <td>{{ item.name }}</td>
        <td>{{ item.value }}</td>
      </tr>
    </table>
  </div>
</template>

<script>
export default {
  data() {
    return {
      tableData: [],
      dataSources: {
        dataA: [{name: 'A1', value: 1}, {name: 'A2', value: 2}],
        dataB: [{name: 'B1', value: 3}, {name: 'B2', value: 4}]
      }
    }
  },
  methods: {
    loadData(source) {
      this.tableData = this.dataSources[source]
    }
  }
}
</script>

使用选项卡组件切换表格

结合 UI 框架如 Element UI 的 Tabs 组件实现优雅的表格切换。

vue怎么实现table切换

<template>
  <el-tabs v-model="activeTab">
    <el-tab-pane label="表格A" name="tableA">
      <TableA />
    </el-tab-pane>
    <el-tab-pane label="表格B" name="tableB">
      <TableB />
    </el-tab-pane>
  </el-tabs>
</template>

<script>
import TableA from './TableA.vue'
import TableB from './TableB.vue'

export default {
  components: { TableA, TableB },
  data() {
    return {
      activeTab: 'tableA'
    }
  }
}
</script>

标签: vuetable
分享给朋友:

相关文章

vue实现登出

vue实现登出

实现Vue登出功能 登出功能通常涉及清除用户会话、令牌或本地存储的数据,并重定向到登录页面。以下是几种常见的实现方式: 清除用户令牌和状态 在Vuex的store中定义一个logout mutati…

vue实现幻灯

vue实现幻灯

Vue实现幻灯片的基础方法 使用Vue实现幻灯片功能可以通过多种方式完成,以下是几种常见方案: 方案一:基于Vue的过渡动画 通过Vue的<transition>或<transit…

vue实现气泡

vue实现气泡

Vue 实现气泡效果的方法 在 Vue 中实现气泡效果可以通过 CSS 动画、第三方库或自定义组件完成。以下是几种常见实现方式: 使用纯 CSS 和 Vue 过渡 通过 Vue 的过渡系统结合 CS…

vue实现桌面widget

vue实现桌面widget

Vue 实现桌面 Widget 的方法 使用 Vue 实现桌面 Widget 通常需要结合 Electron 或 NW.js 等桌面应用框架,以及系统级 API 调用。以下是具体实现方法: 使用 E…

vue实现前端分离

vue实现前端分离

Vue 实现前后端分离 前后端分离是一种架构模式,前端负责页面渲染和用户交互,后端负责数据处理和业务逻辑。Vue.js 作为一款流行的前端框架,非常适合实现前后端分离的开发模式。 技术选型 前端技术…

vue实现选择季度

vue实现选择季度

实现季度选择功能 在Vue中实现季度选择功能可以通过自定义组件或使用第三方库完成。以下是几种常见的实现方式: 使用自定义组件 创建一个基础的季度选择组件,包含年份和季度的选择: <templ…