如何始终显示侧边栏作为菜单面板?

我在社区启用了侧边栏,并像这样调整了面板视图:

我希望始终使用该面板菜单,而不是根据视图宽度在面板和侧边栏之间切换。是否有简单的声明可以实现这一点?

2 个赞

目前,它无法通过 SiteSetting 轻松配置。

行为由 NarrowDesktop 控制

潜在的解决方案是创建一个插件,该插件将覆盖 isNarrowDesktopView 函数,使其始终返回 true。

类似 initializers/always-narrow-view.js

import NarrowDesktop from "discourse/lib/narrow-desktop";

export default {
  name: "always-narrow-view",

  initialize(container) {
    NarrowDesktop.isNarrowDesktopView = () => true;
  }
}
3 个赞

谢谢 Kris!! :sunny:

我把它包装成了一个主题组件,到目前为止效果非常好 :sparkles:

还会再玩玩并多测试一下……

2 个赞

我喜欢这个功能如何适用于整页布局,提供一个宽敞的侧边栏菜单而不会破坏布局:

不幸的是,我意识到它还会将用户菜单更改为始终滑入。这体验不太好。我猜解耦这种行为会变得更复杂?

顺便说一句,我看到用户菜单面板有类:
.user-menu.revamped.menu-panel.slide-in
但侧边栏菜单面板只有类:
.revamped.menu-panel.slide-in
我认为在那里添加一个专用的类 .sidebar-menu 也会有帮助。

1 个赞

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.