打开另一个导航栏下拉菜单时如何关闭另一个导航栏下拉菜单?

问题描述 投票:0回答:1

我向导航栏添加了多个下拉菜单。 当相继激活两者时,两者都保持打开状态:

如何配置导航栏或下拉菜单以在打开第二个下拉菜单时自动关闭第一个下拉菜单?

import dash
import dash_bootstrap_components as dbc
from dash import html

app = dash.Dash(external_stylesheets=[dbc.themes.DARKLY])

navbar = dbc.NavbarSimple(
    children=[
        dbc.DropdownMenu(
            children=[dbc.DropdownMenuItem("How to")],
            nav=True,
            in_navbar=True,
            label="Here is",
        ),
        dbc.DropdownMenu(
            children=[dbc.DropdownMenuItem("auto-close?")],
            nav=True,
            in_navbar=True,
            label="my question",
        ),
    ],
)


# embedding the navigation bar
app.layout = html.Div([navbar])

app.run(host='127.0.0.1', port=80)
python bootstrap-5 plotly-dash
1个回答
0
投票

出现该错误的原因是 dash_bootstrap_components (dbc) 版本 1.0.0 过时。正如 changelog 中提到的,这个问题在 1.0.1 版本中已修复:

修复了 DropdownMenu 取消中的回归问题。如果出现以下情况,菜单将消失: 用户在菜单外部单击或按下退出键。

将 dbc 升级到最新版本导致了预期的自动关闭。

© www.soinside.com 2019 - 2024. All rights reserved.