【Vue】点击侧边导航栏,右侧main对应显示

需求:点击侧边导航栏,右侧main对应显示

通过v-if或v-show等指令来控制不同内容的显示隐藏来实现

注意:

使用v-if时候进行导航栏切换,右侧显示区域可能会出现样式错乱;使用v-show则不会出现此错误

html 复制代码
<template>
    <!-- Aside和Main区域 -->
    <el-container>
      <el-aside>
        <el-menu :default-active="asideActiveIndex" @select="handleAsideSelect">
          <el-menu-item index="basic-info">基本信息</el-menu-item>
          <el-menu-item index="tested-system">被测系统</el-menu-item>
        </el-menu>
      </el-aside>
      <el-main>
        <!-- 通过v-if来控制不同内容的显示 -->
        <div v-if="currentAside === 'basic-info'">basic-info</div>
        <div v-if="currentAside === 'tested-system'">tested-system</div>
      </el-main>
    </el-container>
</template>

<script>
export default {
  data() {
    return {
      asideActiveIndex: 'basic-info',
      currentAside: 'basic-info',

    };
  },
  methods: {
    handleAsideSelect(key, keyPath) {
      this.currentAside = key;
      console.log("key", key);
      if (key === '/basic-info') {
        console.log("切换到基本信息选项卡");
      } else if (key === '/tested-system') {
        console.log("切换到样品清单选项卡");
      }
    },
  }
};
</script>
相关推荐
Ruihong33 分钟前
Vue3 转 React:组件透传 Attributes 与 useAttrs 使用详解|VuReact 实战
vue.js·react.js
gwjcloud40 分钟前
基于linux下docker部署前端vue项目
前端·javascript·vue.js
小李子呢02112 小时前
前端八股Vue(6)---v-if和v-for
前端·javascript·vue.js
程序员buddha2 小时前
ES6 迭代器与生成器
前端·javascript·es6
aq55356002 小时前
网页开发四剑客:HTML/CSS/JS/PHP全解析
javascript·css·html
程序员buddha2 小时前
TypeScript详细教程
javascript·ubuntu·typescript
周星星日记2 小时前
vue3中静态提升和patchflag实现
前端·vue.js·面试
haierccc3 小时前
Win7、2008R2、Win10、Win11使用FLASH的方法
前端·javascript·html
We་ct3 小时前
LeetCode 50. Pow(x, n):从暴力法到快速幂的优化之路
开发语言·前端·javascript·算法·leetcode·typescript·
Hilaku3 小时前
卷AI、卷算法、2026 年的前端工程师到底在卷什么?
前端·javascript·面试