这两天遇到一个问题:element的Nav菜单点击之后,跳转到相应页面,然后点击之后的菜单要高亮显示。菜单写成了组件。
研究了好长时间没解决,今天晚上找到一个解决方案,完美的解决了问题!记录一下。
链接🔗:vue 中使用element-ui的menu选中项高亮的问题
nav组件:
<template>
<div style="padding-left: 15px">
<el-menu :default-active='$route.name' class="el-menu-vertical-demo"
active-text-color="#409EFF" router
@open="handleOpen" @close="handleClose">
<el-menu-item index="/">
<span>Home</span>
</el-menu-item>
<el-menu-item index="allQuestions">
<span>Questions</span>
</el-menu-item>
<el-menu-item index="tags">
<span>Tags</span>
</el-menu-item>
<el-menu-item index="users">
<span>Users</span>
</el-menu-item>
</el-menu>
</div>
</template>
使用:route.name和router,在点击菜单后跳转到相应的页面,其中一个页面:
<template>
<div class="pane">
<router-view></router-view>
<el-row>
<header1></header1>
<el-col :span="4">
<side-bar style="margin-top: 15px"></side-bar>
</el-col>
</el-row>
</div>
</template>
<script>
import SideBar from '../components/SideBar.vue'
import Header from '../components/Header.vue'
components: {
'side-bar': SideBar,
'header1': Header,
}
</script>
路由的配置:
export default new Router({
routes: [{
path: '/users',
name: 'users',
component: User
}
]
})
发现这样配置之后会将 index添加到path中,菜单也能高亮显示。