Я создал 2 выпадающих. оба они стреляют по одной кнопке. 4 дня назад этот макет работал отлично.
Но так как несколько дней назад срабатывает только один обратный вызов, а не другой.
Я попытался заглянуть в обратный вызов, который не стрелял. Оказывается, перезвонит, но ничего не возвращается.
Я пытался напечатать все до возврата того же обратного вызова. все печатается хорошо.
Были ли внесены какие-либо изменения в основные компоненты?
import numpy as np
import pandas as pd
import dash
import dash_table
import dash_html_components as html
import dash_core_components as dcc
from dash.dependencies import Input,Output,State
app.scripts.config.serve_locally = True
app.config['suppress_callback_exceptions'] = True
app.layout = html.Div([
html.Button('get attributes',id='get_attributes',n_clicks=0),
dcc.Dropdown(id="select_dep_var"),
html.Div(id = 'store_dep_var'),
dcc.Dropdown(id="drp1"),
dcc.Dropdown(id="drp2"),
])
@app.callback(Output('drp1','options'),
[Input('get_attributes','n_clicks'),
Input('select_dep_var','children')])
def drp1update(n_click,depend_var):
if n_click > 0:
if depend_var is not None:
return [{'label': i, 'value': i} for i in data[depend_var].unique()]
@app.callback(Output('drp2','options'),
[Input('get_attributes','n_clicks'),
Input('select_dep_var','children')])
def drp2update(n_click,depend_var):
if n_click > 0:
if depend_var is not None:
return [{'label': i, 'value': i} for i in data[depend_var].unique()]
@app.callback(Output('store_dep_var','children'),
[Input('select_dep_var','value')])
def store_dep_var(dep_var):
return dep_var
@app.callback(Output('select_dep_var','options'),
[Input('get_attributes','n_clicks')])
def select_dep_var(click):
if click >0:
print('returning attributes in dropdown')
print(click)
print(data.columns)
return [{'label': i, 'value': i} for i in data.columns]
if __name__ == '__main__':
app.run_server(debug=True)