У меня есть карта и компонент с данными в макете, который обновляется обратным вызовом. Таблицу данных можно редактировать, и пользователь может добавлять новую информацию в новую таблицу. При событии щелчка таблицы обновления
у меня есть два обратных вызова: один для обновления карты, а другой для таблицы данных. Я хотел бы запустить обратный вызов карты изнутри обратного вызова таблицы данных. По сути, я хотел бы обновить карту на основе значений datatable.
Могу ли я запустить еще один обратный вызов из обратного вызова или запустить несколько строк кода внутри него? еще один обратный звонок? Пытаюсь найти элегантный и эффективный способ сделать это.
layout = html.Div([
# Plot map
dcc.Graph(id="map-graph"),
# DataTable
dash_table.DataTable(
id="table",
columns=[{"id":"Type","name":"Type"},
{"id":"space","name": "space"}],
sort_action="native",
filter_action="native",
row_deletable=True
),
# Update map
dbc.Button("Update map", id="update-map", className="mr-1"),
# Update Table
dbc.Button("Update table", id="update-table", className="mr-1")
]),
# Callbacks
# Update map
@app.callback(Output("map-graph", "figure"),
[Input("update-map", "value")])
def updatemap(value):
...
do something
...
return value
# Update table
@app.callback(Output("table", "data"),
[Input("update-table", "value")])
def updatetable(value):
...
do something
...
# Run the code inside previous callback which updates the map.
return rows
Подробнее здесь: https://stackoverflow.com/questions/661 ... of-datatab
ОБНОВЛЕНИЕ, вызванное обратным вызовом, фигурируйте. После изменения значений данных в приложении DASH в приложении DASH ⇐ Python
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение