Python 破折号下拉占位符文本
Python dash dropdown placeholder text
我正在尝试在 dash 中构建一个下拉菜单,其中占位符的文本应由另一个回调定义。
到目前为止我尝试的是让占位符由 html.Div 定义,如下所示:dcc.Dropdown(id = 'test_dropdown', options = [{'label': 'Test1', 'value': '1'},{'label': 'Test2', 'value': '2'}], placeholder = html.Div(id = 'test_placeholder'))
,文本由另一个回调定义。这导致以下错误消息:无效参数 placeholder
传递到 ID 为“test_dropdown”的 Dropdown。
预计 string
。
提供类型 array
.
如果我删除 html.Div 周围的方括号,错误消息将变为:ID 为“test_dropdown 的 dash_core_components.Dropdown
组件(版本 1.16.0) ]" 检测到 children
以外的道具的组件
您是否忘记将多个 children
包装在一个数组中?
Prop 占位符的值为 Div(id='test_placeholder')
有没有人对我如何实现依赖于另一个下拉菜单的占位符提出建议?或者实施多个下拉菜单并使用隐藏 html.Div?
隐藏除一个以外的所有下拉菜单会更好吗?
在此先感谢您的帮助
只需将 dcc.Dropdown
的 placeholder
作为回调的 Output
。
这是一个最小的示例,其中 dcc.Input
控制 placeholder
。当然,对于改变 placeholder
的回调,任何东西都可以用作 Input
,例如另一个值 dcc.Dropdown
:
import dash
import dash_html_components as html
import dash_core_components as dcc
from dash.dependencies import Input, Output
app = dash.Dash(__name__)
app.layout = html.Div([
dcc.Input(id='demo-input', value='Type here'),
dcc.Dropdown(
id='demo-dropdown',
options=[
{'label': 'New York City', 'value': 'NYC'},
{'label': 'Montreal', 'value': 'MTL'}
]
)
])
@app.callback(
Output('demo-dropdown', 'placeholder'), # <- dropdown placeholder gets updated
Input('demo-input', 'value'))
def update_placeholder(value):
return value
if __name__ == '__main__':
app.run_server(debug=True)
我正在尝试在 dash 中构建一个下拉菜单,其中占位符的文本应由另一个回调定义。
到目前为止我尝试的是让占位符由 html.Div 定义,如下所示:dcc.Dropdown(id = 'test_dropdown', options = [{'label': 'Test1', 'value': '1'},{'label': 'Test2', 'value': '2'}], placeholder = html.Div(id = 'test_placeholder'))
,文本由另一个回调定义。这导致以下错误消息:无效参数 placeholder
传递到 ID 为“test_dropdown”的 Dropdown。
预计 string
。
提供类型 array
.
如果我删除 html.Div 周围的方括号,错误消息将变为:ID 为“test_dropdown 的 dash_core_components.Dropdown
组件(版本 1.16.0) ]" 检测到 children
以外的道具的组件
您是否忘记将多个 children
包装在一个数组中?
Prop 占位符的值为 Div(id='test_placeholder')
有没有人对我如何实现依赖于另一个下拉菜单的占位符提出建议?或者实施多个下拉菜单并使用隐藏 html.Div?
隐藏除一个以外的所有下拉菜单会更好吗?在此先感谢您的帮助
只需将 dcc.Dropdown
的 placeholder
作为回调的 Output
。
这是一个最小的示例,其中 dcc.Input
控制 placeholder
。当然,对于改变 placeholder
的回调,任何东西都可以用作 Input
,例如另一个值 dcc.Dropdown
:
import dash
import dash_html_components as html
import dash_core_components as dcc
from dash.dependencies import Input, Output
app = dash.Dash(__name__)
app.layout = html.Div([
dcc.Input(id='demo-input', value='Type here'),
dcc.Dropdown(
id='demo-dropdown',
options=[
{'label': 'New York City', 'value': 'NYC'},
{'label': 'Montreal', 'value': 'MTL'}
]
)
])
@app.callback(
Output('demo-dropdown', 'placeholder'), # <- dropdown placeholder gets updated
Input('demo-input', 'value'))
def update_placeholder(value):
return value
if __name__ == '__main__':
app.run_server(debug=True)