laravel-admin侧边菜单默认折叠需启用sidebar-mini并移除sidebar-collapse配置,清缓存后生效;“折叠”实为迷你模式(仅图标),非完全隐藏,且需额外逻辑保持当前菜单高亮。

要让 Laravel-Admin 的侧边菜单在页面加载时默认处于折叠状态,关键在于配置项的组合与取舍,不是简单设为 true 或 false 就能生效。
核心配置:启用迷你模式并禁用自动折叠
打开 config/admin.php 文件,在 'layout' 数组中进行如下设置:
-
保留
'sidebar-mini' => true:这是触发“迷你侧边栏”的必要开关,会让菜单收窄为图标形式 -
移除或显式设为
false的'sidebar-collapse':如果该键存在且值为true,会强制初始折叠(但可能与 mini 模式冲突);官方推荐做法是直接删掉这一行,仅保留sidebar-mini
验证前端行为是否生效
配置修改后需清空配置缓存,并确认前端资源未被强缓存干扰:
- 执行
php artisan config:clear - 检查浏览器开发者工具的 Network 标签,确认加载的是最新版
laravel-admin.css和laravel-admin.js - 若仍不生效,可手动在浏览器控制台运行
$('body').addClass('sidebar-mini')测试样式是否就绪
补充说明:折叠 ≠ 隐藏
“默认折叠”在此语境下实际指“默认进入迷你模式”,即菜单宽度最小化、只显示图标。它并非完全隐藏侧边栏(那需要 JS 控制或自定义 layout),而是 Laravel-Admin 原生支持的响应式交互状态。移动端访问时,该设置会自然配合 sidebar-mini 触发更紧凑的布局。
进阶:保持当前菜单项高亮
即使菜单处于迷你状态,用户仍需知道当前所处位置。可在 public/vendor/laravel-admin/laravel-admin.js 中追加逻辑(或通过自定义 JS 注入):
- 遍历
.sidebar-menu a,比对this.href与window.location.href - 为匹配项的父级
<li>添加active类,并向上激活其所属的.treeview结构 - 确保该脚本在 DOM 加载完成后执行(
$(window).on('load', ...))











