2016-06-08 2 views
0

В событии 'navigation' планировщика я получаю данные с сервера для новой даты. У меня есть функция, которая вызывается из slotTemplate представления дня, которая использует полученные данные для окраски слотов планировщика.Kendo UI Scheduler - установка slotTemplate после данных, полученных с сервера

Я использую Angular2, TypeScript и Reactive-Extensions/RxJS. Наблюдается для получения ответа с сервера.

Моя проблема заключается в том, что при переходе на другую дату функция slotTemplate выполняется до того, как ответ с сервера обработан, чтобы данные не были доступны для раскраски слотов. Конечно, после того, как данные готовы, функция slotTemplate снова не запускается.

Я бы предпочел использовать встроенные методы Kendo, если это возможно, и меньше jQuery, чтобы решить эту проблему.

Любые идеи, как я могу это сделать?

+0

Не делайте это наблюдаемыми, может быть? – AngJobs

+0

Это вопрос или ответ? :) Как бы решить эту проблему? Как это поможет? – Shai

+0

Надеюсь, что это не так грубо, я имел в виду это как реальный вопрос ... Наблюдатели должны там остаться. Это не зависит от меня. Но если бы это было так, как вы предлагаете мне это сделать? Запрос на сервер является асинхронным после всех ... – Shai

ответ

0

Решено: Сброс представления к текущему значению перерисовывает планировщик.

При возврате Observable вы можете покрасить слоты планировщика или выполнить любое другое изменение в DOM, а затем повторно установить вид, и изменения будут показаны.

Код для вновь установить вид является:

let scheduler = $("#scheduler").data("kendoScheduler"); 
scheduler.view(scheduler.viewName()); 
Смежные вопросы