修改前台菜单分组
This commit is contained in:
@@ -410,11 +410,11 @@ const AppLayout: React.FC = () => {
|
||||
|
||||
{/* Menu */}
|
||||
<div style={{ flex: 1, padding: '8px 8px', overflow: 'auto' }}>
|
||||
{!collapsed && (
|
||||
{/* {!collapsed && (
|
||||
<div style={{ color: 'rgba(148,163,184,0.4)', fontSize: 11, fontWeight: 600, padding: '8px 12px 6px', letterSpacing: 1 }}>
|
||||
导航
|
||||
</div>
|
||||
)}
|
||||
)} */}
|
||||
{(() => {
|
||||
const groups = menuItems.filter(m => (m.menu_type ?? m.menuType) === 'group');
|
||||
const pages = menuItems.filter(m => (m.menu_type ?? m.menuType) !== 'group');
|
||||
@@ -454,19 +454,15 @@ const AppLayout: React.FC = () => {
|
||||
groups.sort((a, b) => (a.sortOrder ?? 0) - (b.sortOrder ?? 0)).forEach(g => {
|
||||
const children = (childMap[g.id] || []).sort((a, b) => (a.sortOrder ?? 0) - (b.sortOrder ?? 0));
|
||||
if (!collapsed) {
|
||||
const isGroupOpen = !collapsedGroups[g.id];
|
||||
items.push(
|
||||
<div key={g.id}>
|
||||
<div onClick={() => setCollapsedGroups(prev => ({ ...prev, [g.id]: !prev[g.id] }))} style={{
|
||||
display: 'flex', alignItems: 'center', justifyContent: 'space-between',
|
||||
padding: '8px 14px', margin: '8px 0 2px', cursor: 'pointer',
|
||||
color: 'rgba(148,163,184,0.5)', fontSize: 11, fontWeight: 600,
|
||||
letterSpacing: 0.5,
|
||||
<div style={{
|
||||
color: 'rgba(148,163,184,0.4)', fontSize: 11, fontWeight: 600,
|
||||
padding: '8px 12px 6px', letterSpacing: 1,
|
||||
}}>
|
||||
<span>{g.label}</span>
|
||||
<span style={{ fontSize: 10, transform: isGroupOpen ? 'rotate(90deg)' : 'none', transition: 'transform 0.2s' }}>▶</span>
|
||||
{g.label}
|
||||
</div>
|
||||
{isGroupOpen && children.map(c => renderMenuItem(c, 1))}
|
||||
{children.map(c => renderMenuItem(c, 1))}
|
||||
</div>
|
||||
);
|
||||
} else {
|
||||
|
||||
Reference in New Issue
Block a user