我正在使用Dash使用 python 构建仪表板。我有以下代码:
import dash
import dash_core_components as dcc
import dash_table_experiments as dte
import dash_html_components as html
from datetime import datetime as dt
app = dash.Dash()
app.layout = html.Div([
dcc.Location(id = 'url', refresh=False),
html.Div(id = 'page-content')
])
app.config['suppress_callback_exceptions'] = True
def get_index():
index = html.Div([
dcc.Link('Live Data', href='/live')
], className = 'row')
return index
live = html.Div([
html.H1('Table '),
dcc.DatePickerRange(
id = 'selected-period',
initial_visible_month=dt(2018, 4, 5),
start_date = dt(2018, 4, 22),
end_date=dt(2018, 4, 25)
),
# dte.DataTable(
# rows= [{}],
# row_selectable = True,
# filterable = True,
# sortable = True,
# editable = False,
# id = 'data-table'
# )
])
@app.callback(
dash.dependencies.Output('page-content', 'children'),
[dash.dependencies.Input('url', 'pathname')]
)
def display_correct_page(pathname):
if pathname == '/live':
return live
else:
return get_index()
if __name__ == '__main__':
app.run_server(debug=True)
我想使用dash_core_components.Link
,但似乎与dash_table_experiments
. dte.DataTable
当我在注释掉的情况下运行此代码时,该应用程序运行良好。当我尝试使用该dte.DataTable
部件运行应用程序时,我得到一个白屏。我不明白为什么会发生这种情况,因为我以前使用dte.DataTable
过并且我没有任何问题。问题似乎在于我正在使用dcc.Link
但我不明白为什么会这样。
问题:有没有办法使用dte.DataTable
with dcc.Links
?如果是这样的话; 如何更改我的脚本以显示所需的 DataTable?
(我知道我可以通过删除该dcc.Link
部分并像一个非常基本的应用程序一样运行它来使这个脚本工作。我希望能够使用该链接,因为我想将两个不同的应用程序与dte.DataTable
.)