当前位置:首页 > 前端教程

elementui navmenu

2026-03-05 18:03:56前端教程

elementui navmenu 基本用法

Element UI 的 NavMenu 组件用于创建导航菜单,支持横向和纵向布局。基本使用方式是通过 el-menu 标签包裹 el-menu-itemel-submenu 实现层级结构。

横向菜单示例代码:

<el-menu mode="horizontal" :default-active="activeIndex">
  <el-menu-item index="1">首页</el-menu-item>
  <el-submenu index="2">
    <template slot="title">产品</template>
    <el-menu-item index="2-1">产品列表</el-menu-item>
    <el-menu-item index="2-2">产品详情</el-menu-item>
  </el-submenu>
  <el-menu-item index="3">关于我们</el-menu-item>
</el-menu>

纵向菜单示例代码:

<el-menu default-active="2" class="el-menu-vertical-demo">
  <el-submenu index="1">
    <template slot="title">
      <i class="el-icon-location"></i>
      <span>导航一</span>
    </template>
    <el-menu-item index="1-1">选项1</el-menu-item>
    <el-menu-item index="1-2">选项2</el-menu-item>
  </el-submenu>
</el-menu>

导航菜单属性配置

NavMenu 提供多种属性用于自定义菜单行为:

  • mode:菜单类型,可选 horizontal/vertical
  • background-color:菜单背景色
  • text-color:菜单文字颜色
  • active-text-color:激活菜单文字颜色
  • default-active:默认激活的菜单项
  • router:是否使用 vue-router 模式

动态激活菜单项的实现:

elementui navmenu

data() {
  return {
    activeIndex: '1'
  }
}

导航菜单事件处理

NavMenu 提供多种事件用于交互处理:

  • select:菜单激活回调
  • open:submenu 展开回调
  • close:submenu 收起回调

事件处理示例:

<el-menu @select="handleSelect">
  <!-- 菜单项 -->
</el-menu>

<script>
methods: {
  handleSelect(key, keyPath) {
    console.log(key, keyPath)
  }
}
</script>

响应式导航菜单实现

结合 Element UI 的响应式布局组件,可以创建适应不同屏幕尺寸的导航菜单:

elementui navmenu

<el-row>
  <el-col :xs="24" :sm="12" :md="8" :lg="6" :xl="4">
    <el-menu>
      <!-- 菜单内容 -->
    </el-menu>
  </el-col>
</el-row>

移动端适配方案:

<el-menu :collapse="isCollapse">
  <!-- 可折叠菜单项 -->
</el-menu>

<script>
data() {
  return {
    isCollapse: false
  }
},
mounted() {
  window.addEventListener('resize', this.handleResize)
  this.handleResize()
},
methods: {
  handleResize() {
    this.isCollapse = window.innerWidth < 768
  }
}
</script>

导航菜单样式定制

通过 CSS 覆盖可以自定义导航菜单样式:

.el-menu {
  border-right: none;
}
.el-menu-item {
  font-size: 14px;
}
.el-submenu__title {
  color: #333;
}
.custom-menu {
  background-color: #f5f7fa;
}

主题色修改示例:

.el-menu--horizontal {
  --el-menu-active-color: #ff6a00;
}
.el-menu--vertical {
  --el-menu-bg-color: #545c64;
}

分享给朋友:

相关文章

elementui navmenu

elementui navmenu

使用 ElementUI NavMenu 导航菜单 ElementUI 的 NavMenu 组件提供了一种简单的方式来实现网站或应用的导航菜单。以下是关于如何使用和配置 NavMenu 的详细说明。…

elementui datepick

elementui datepick

ElementUI DatePicker 使用指南 ElementUI 是一套基于 Vue.js 的组件库,DatePicker 是其中一个常用的日期选择组件。以下是关于 ElementUI Date…

elementui字典

elementui字典

以下是关于 Element UI 字典功能的整理,结合常见使用场景和官方文档的实践方法: 字典数据绑定 Element UI 的 el-select 组件通常与字典数据结合使用。字典数据格式建议为数…

移植elementui

移植elementui

移植 Element UI 的方法 Element UI 是一个基于 Vue.js 的组件库,移植通常涉及从旧项目迁移到新项目或升级版本。以下是常见的移植方法: 安装 Element UI 在目标项…

elementui实例

elementui实例

以下是关于 Element UI 实例的整理内容,涵盖常见组件用法和实际开发中的关键点: 安装与基础配置 通过 npm 安装 Element UI: npm install element-ui…

elementui教程

elementui教程

ElementUI 教程 ElementUI 是基于 Vue.js 的桌面端组件库,提供丰富的 UI 组件,适用于快速开发企业级应用。以下是基础教程和进阶使用指南。 安装与引入 通过 npm 安…