【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>
相关推荐
TimelessHaze23 分钟前
拆解字节面试题:async/await 到底是什么?底层实现 + 最佳实践全解析
前端·javascript·trae
OpenTiny社区1 小时前
TinyEngine 2.8版本正式发布:AI能力、区块管理、Docker部署一键强化,迈向智能时代!
前端·vue.js·低代码
qfZYG1 小时前
Trae 编辑器在 Python 环境缺少 Pylance,怎么解决
前端·vue.js·编辑器
bug爱好者1 小时前
Vue3 基于Element Plus 的el-input,封装一个数字输入框组件
前端·javascript
乔公子搬砖2 小时前
小程序开发提效:npm支持、Vant Weapp组件库与API Promise化(八)
前端·javascript·微信小程序·js·promise·vagrant·事件绑定
没烦恼3013 小时前
登录表单提交:按钮点击事件 vs form submit事件,该如何选择?
javascript
北辰浮光3 小时前
[Web数据控制]浏览器中cookie、localStorage和sessionStorage
前端·vue.js·typescript
用户841794814563 小时前
vue 如何使用 vxe-table 来实现跨表拖拽,多表联动互相拖拽数据
前端·vue.js
好好好明天会更好4 小时前
Vue中this.$options.data()是什么东西?
前端·vue.js
scorpion_V4 小时前
WebRTC 结合云手机:释放实时通信与虚拟手机的强大协同效能
vue.js·智能手机·webrtc