dash Python中“suppress_callback_exceptions”的作用是啥?
Posted
技术标签:
【中文标题】dash Python中“suppress_callback_exceptions”的作用是啥?【英文标题】:What's the role of "suppress_callback_exceptions" in dash Python?dash Python中“suppress_callback_exceptions”的作用是什么? 【发布时间】:2021-08-05 08:50:30 【问题描述】:写这个有什么区别:
app = dash.Dash(__name__, suppress_callback_exceptions=True,
meta_tags=['name': 'viewport',
'content': 'width=device-width, initial-scale=1.0']
)
server = app.server
还有这个:
app = dash.Dash(__name__, suppress_callback_exceptions=False,
meta_tags=['name': 'viewport',
'content': 'width=device-width, initial-scale=1.0']
)
server = app.server
【问题讨论】:
【参考方案1】:来自source code:
suppress_callback_exceptions:检查回调以确保引用的 ID 存在并且道具有效。如果您的布局是动态的,请设置为
True
,以绕过这些检查。
因此,您自己链接的示例并没有真正的区别。或者更确切地说,如果 app
具有引用不存在的 id 和/或无效道具的回调,或者如果 app.layout
中的元素具有无效道具,您只会遇到不同的行为。
将suppress_callback_exceptions
设置为True
的原因可能是因为您有通过id 引用元素的回调,但这些元素在应用程序的生命周期中并不总是存在于布局中。例如,这些元素可能会通过不同的回调动态插入到app.layout
。
来自documentation的另一个例子
...由于这里指定了suppress_callback_exceptions=True,Dash 必须假设应用程序初始化时输入存在于应用程序布局中...
【讨论】:
以上是关于dash Python中“suppress_callback_exceptions”的作用是啥?的主要内容,如果未能解决你的问题,请参考以下文章
在 Dash (python) 中,我遇到了滑块和 radioitem 回调的问题
如何在 python(dash)仪表板中显示 png 文件和 csv 表
从 dash python 中的 url 获取参数:此 ID 分配给布局中的 dash_core_components.Location 组件,不支持属性