element默认左侧菜单全部展开,禁止收缩

本文详细介绍了如何使用Vue.js创建一个深度垂直菜单,并展示了如何通过CSS进行定制,包括隐藏下拉箭头等细节。示例代码中包含了一个`el-menu`组件的使用,同时提到了`handleClose`方法来处理菜单项的关闭逻辑。此外,还分享了调整CSS以确保样式生效的技巧,如使用`!important`和`deep`选择器。
<template>
		<el-menu
	        class="el-menu-vertical-demo"
	        @close="handleClose"
	        :default-active="$route.path"
	        ref="menus"
	        :default-openeds="['0','1','2']"
        	v-menuIcon
      	>
      	</el-menu>
     </template>


      <script>
	      handleClose(key, keyPath) {
		      this.$refs.menus.open(keyPath);
		    },
		</script>

css方面也需要进行调整(隐藏下拉箭头等)

 .el-menu >>> .el-submenu .el-submenu__title .el-submenu__icon-arrow {
        visibility: hidden
    }

剩下的细节  根据自己的需求搞一搞就可以了
css失效的 用!important 、deep等


## *点个赞再走呗.....*

### 实现 Vue3Element Plus 左侧菜单折叠效果 为了实现在 Vue3 项目中使用 Element Plus 组件库创建可折叠左侧菜单,需遵循特定的设计模式和技术要点。 #### 创建基础布局 首先,在应用中设置基本的页面框架,该框架应包含头部、主体以及侧边栏部分。通过 `el-container` 和其他容器组件来定义这些区域[^2]: ```html <template> <el-container class="home-container"> <!-- 头部 --> <el-header>Header</el-header> <!-- 主体 --> <el-container> <!-- 侧边栏 --> <el-aside width="auto">Aside</el-aside> <!-- 右侧主要内容区 --> <el-main>Main Content Area</el-main> </el-container> </el-container> </template> ``` #### 添加响应式菜单逻辑 为了让菜单具备展开/收缩的功能,可以利用 Vue 的双向绑定特性和自定义事件处理程序。这里的关键在于维护一个布尔类型的变量用于控制菜单宽度的变化,并将其与按钮或其他触发器关联起来以便切换状态[^1]。 ```javascript <script setup lang="ts"> import { ref } from &#39;vue&#39;; const isCollapse = ref(false); function toggleSideBar() { isCollapse.value = !isCollapse.value; } </script> ``` 接着修改 HTML 结构中的 `<el-aside>` 部分以适应新的属性: ```html <!-- 修改后的侧边栏 --> <el-aside :width="isCollapse ? &#39;64px&#39; : &#39;200px&#39;" @click="toggleSideBar()"> <el-menu router :collapse="isCollapse" default-active="/dashboard"> <!-- 菜单项... --> </el-menu> </el-aside> ``` 上述代码片段展示了如何动态调整侧边栏宽度并监听点击事件从而改变其显示形态。值得注意的是,`:collapse` 属性决定了菜单项文字是否隐藏;而 `default-active` 则指定了默认激活路径。 #### 解决性能问题 针对可能出现的动画延迟或卡顿情况(如引用所提到),建议优化资源加载方式,特别是对于第三方字体图标文件。可以通过按需加载的方式减少不必要的网络请求次数,提高用户体验质量[^3]。 此外,还可以考虑采用 CSS 动画代替 JavaScript 来完成过渡效果,因为浏览器通常能更高效地渲染前者。确保所有样式表都经过压缩并且只包含了必要的规则集也能有效降低复杂度。
评论 8
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值