javascript - цикле - Как периодически обновлять модель Эмбера(например, в setInterval)?




рекурсивный settimeout (2)

Вы можете поместить этот код в метод init () маршрута:

init() {
  this._super(...arguments);
  setInterval(() => {
    this.refresh();
  }, REFRESH_INTERVAL);
},

https://code.i-harness.com

У меня есть приложение Ember, модель которого поступила из Ajax-вызова. Первый вызов работает отлично, у меня есть ловушка модели Ember.Route возвращающая обещание вызову Ajax, который извлекает данные для отображения.

Но эти данные часто меняются в бэкэнде, и я хочу, чтобы веб-приложение периодически опрашивало сервер, скажем, каждые 5 секунд, и обновляло или, что еще лучше, полностью меняло данные модели на вновь полученные.

Как правильно сделать это с Ember.js? Я новичок в Эмбер, поэтому я немного потерян с этим.


Если вы не используете данные Ember, вы можете просто добавить рекурсивный setTimeout или setInterval в свой контроллер и установить свойство model . Вот простой пример настройки модели из события пользовательского интерфейса .

Если вы используете ember-data, я думаю, что следующие темы имеют более точные решения:





ember.js