я пытаюсь показать загрузочное сообщение, когда приложение mashup получает данные с сервера Qlik, но я не получаю хорошего результата с моим подходом.
Мой подход примерно такой:
Сначала я получаю текущие выборки из метода getLists, а при изменении выборок показывает сообщение о загрузке.Затем в обратном вызове гиперкуба в конце этого метода я скрываю сообщение о загрузке.
Код выглядит примерно так:
В методе getList
app.getList("CurrentSelections", function (reply) {
if(selection_change()){
show_loading_message();
}
});
В каждомHyperCube:
app.createCube(config_cube, function (reply) {
//do stuff with reply data
hide_loading_message();
});
Этот код находится внутри каждого гиперкуба на панели и скрывает загрузочный метод message (), ожидая завершения выполнения каждого куба, такого как метод join () в многопроцессорном пакете python.
Но моя проблема в том, что getList и метод app.createCube являются асинхронными. Иногда загрузочное сообщение активно после выполнения метода createcube и не скрывает его снова.
Кто-то знает, как улучшить этопроблема, мне нужно показать сообщение о загрузке, потому что я работаю с большим набором данных, и механизм qlik sense задерживается для выдачи данных ответа
Спасибо!