• element 导航菜单 控制路由跳转


    首先复制官网的例子,在这基础上再修改成我们想要的样子。

    <el-menu :default-active="activeIndex" class="el-menu-demo" mode="horizontal" @select="handleSelect">
     <el-menu-item index="1">处理中心</el-menu-item>
     <el-submenu index="2">
     <template slot="title">我的工作台</template>
     <el-menu-item index="2-1">选项1</el-menu-item>
     <el-menu-item index="2-2">选项2</el-menu-item>
     <el-menu-item index="2-3">选项3</el-menu-item>
     <el-submenu index="2-4">
      <template slot="title">选项4</template>
      <el-menu-item index="2-4-1">选项1</el-menu-item>
      <el-menu-item index="2-4-2">选项2</el-menu-item>
      <el-menu-item index="2-4-3">选项3</el-menu-item>
     </el-submenu>
     </el-submenu>
     <el-menu-item index="3" disabled>消息中心</el-menu-item>
     <el-menu-item index="4"><a href="https://www.ele.me" rel="external nofollow" target="_blank">订单管理</a></el-menu-item>
    </el-menu>
     
    <script>
     export default {
     data() {
      return {
      activeIndex: '1'
      };
     },
     methods: {
      handleSelect(key, keyPath) {
      console.log(key, keyPath);
      }
     }
     }
    </script>

    注意属性:

    default-active:当前激活菜单的 index

    router:是否使用 vue-router 的模式,启用该模式会在激活导航时以 index 作为 path 进行路由跳转

    index:唯一标志,,类型为字符串,在每一个el-menu-item组件上都有一个编号,给default-active标记


    使用菜单栏进行路由跳转:

    <el-menu :default-active="this.$router.path" router mode="horizontal">
     <el-menu-item v-for="(item,i) in navList" :key="i" :index="item.name">
      {{ item.navItem }}
     </el-menu-item>
    </el-menu>

    数据:

    data() {
      return {
      navList:[
       {name:'/findProject',navItem:'发现项目'},
       {name:'/communityActivity',navItem:'社区动态'},
       {name:'/publishProject',navItem:'发布项目'},
       {name:'/personalCenter',navItem:'个人中心'},
       {name:'/manageCenter',navItem:'管理员中心'},
      ]
      }
     }

    router.js

    配置路由

    使用菜单栏进行路由跳转有几个注意点:

    1. 在el-menu加上router
    
    2. index必须绑定路由的path,参考上面的例子,'/'不能少
    
    3. default-active设为当前路由(this.$router.path),这样在路由变化的时候,对应的menu-item才会高亮
    
    当this.$router.path等于el-menu-item标签中的index属性值时则该item为当前项,对应的menu-item才会高亮。
  • 相关阅读:
    禁止页面全选复制IE,Opera,Mozilla Firefox,Google Chrome,Safari,Flock等主流浏览器测试成功
    Create virtual keyboard using C# Winform Application
    C# 获取Windows语言类型(两种方式)
    Javascript在ASP.NET中的用法:计算还剩余输入多少个字符
    IE和firefox通用的复制到剪贴板的JS函数,Opera测试不成功!
    什么是数据的表分区(文章附上Server 2005分区实施方案)
    JavaScript创建的可编辑表格
    关于ASP.NET页面打印技术的总结
    错误:该行已经属于另一个表
    安装IE7后测试IE6环境的解决办法_IE6Standalone
  • 原文地址:https://www.cnblogs.com/SRH151219/p/11171381.html
Copyright © 2020-2023  润新知