当前位置:首页 > VUE

vue实现tab标签

2026-01-07 00:12:46VUE

Vue 实现 Tab 标签的方法

使用动态组件和 v-for 渲染标签

通过 v-for 循环生成标签页标题,结合 v-bind:class 动态切换激活状态。使用 v-show 或动态组件 <component :is="currentTab"> 控制内容显示。

vue实现tab标签

<template>
  <div>
    <div class="tabs">
      <button 
        v-for="tab in tabs" 
        :key="tab.name"
        @click="currentTab = tab.name"
        :class="{ active: currentTab === tab.name }"
      >
        {{ tab.title }}
      </button>
    </div>
    <div class="content">
      <component :is="currentTab" />
    </div>
  </div>
</template>

<script>
export default {
  data() {
    return {
      currentTab: 'Home',
      tabs: [
        { title: '首页', name: 'Home' },
        { title: '关于', name: 'About' }
      ]
    }
  },
  components: { Home, About }
}
</script>

<style>
.active {
  background-color: #42b983;
  color: white;
}
</style>

使用 Vue Router 实现路由标签

结合 Vue Router 的嵌套路由或命名视图,通过 <router-link> 实现标签切换,适合需要 URL 同步的场景。

<template>
  <div>
    <router-link 
      v-for="tab in tabs"
      :key="tab.path"
      :to="tab.path"
      active-class="active"
    >
      {{ tab.title }}
    </router-link>
    <router-view></router-view>
  </div>
</template>

使用第三方库

vue-tabs-componentelement-uiel-tabs,可快速实现复杂功能(如动画、懒加载)。

<template>
  <el-tabs v-model="activeTab">
    <el-tab-pane label="首页" name="home">内容1</el-tab-pane>
    <el-tab-pane label="关于" name="about">内容2</el-tab-pane>
  </el-tabs>
</template>

注意事项

  • 动态组件需提前注册子组件。
  • 路由方式需配置对应路由规则。
  • 样式需自定义或配合 UI 框架的类名。

vue实现tab标签

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

相关文章

vue实现下拉刷新组件

vue实现下拉刷新组件

实现下拉刷新组件的核心思路 下拉刷新功能通常通过监听触摸事件、滚动位置和动画效果实现。Vue中可以利用自定义指令或封装组件完成,以下为两种常见实现方式。 基于自定义指令的实现 创建指令监听触摸事件…

vue实现visual

vue实现visual

Vue 实现可视化(Visual)的常见方法 在 Vue 中实现可视化通常涉及数据可视化库的集成,以下是几种主流方案: 使用 ECharts ECharts 是一个强大的 JavaScript…

vue实现点击

vue实现点击

实现点击事件的基本方法 在Vue中实现点击事件可以通过v-on指令或@简写方式绑定。以下是常见的点击事件绑定方法: <template> <button v-on:click…

vue菜单实现

vue菜单实现

Vue 菜单实现方法 使用 Element UI 的菜单组件 Element UI 提供了现成的菜单组件,适合快速实现导航菜单。安装 Element UI 后,可以直接使用 el-menu 相关组件。…

vue实现定位

vue实现定位

Vue 中实现定位的方法 在 Vue 中实现定位可以通过以下几种方式: 使用 CSS 定位 通过 CSS 的 position 属性实现定位,Vue 中可以直接在组件的 <style>…

vue实现逻辑

vue实现逻辑

Vue 实现逻辑的核心概念 Vue.js 是一个渐进式 JavaScript 框架,其核心逻辑围绕数据驱动和组件化开发。通过响应式系统、虚拟 DOM 和组件生命周期等机制,Vue 实现了高效的前端开发…