Когда использовать диспетчеризацию с потоком alt.js

Я новичок в использовании flux и начал использовать alt.js. Мне интересно, когда я буду использовать диспетчеризацию из моих действий. Например, возьмите этот код.

//ImageActions.js

class ImageActions {
  getImages(id) {
    return Api.get(`topics/${id}`).then(response => {
      let images = response.data.filter(image => {
        return !image.is_album;
      });
      this.updateImages(images);
    });
  }
  updateImages(images) {
    return images;
  }
}
---------------------------------------------------

//ImageStore.js
class ImageStore {
  constructor() {
    this.images = [];
    this.image = {};
    this.bindListeners({
      handleUpdateImages: ImageActions.UPDATE_IMAGES
    });
  }
  handleUpdateImages(images) {
    this.images = images;
  }
}

В настоящее время это работает без использования функции dispatch(), как показано в их руководстве здесь http://alt.js.org/guide/async/

Мне интересно, когда я хочу сделать это, и что делает диспетчеризация и что она делает иначе, чем просто возвращать значение из функции updateImages в ImageaActions.js

1 ответ

Решение

Ты используешь dispatch когда ваши асинхронные вызовы разрешатся. В этом случае это работает, потому что, когда ваш вызов синхронизации заканчивается, вы вызываете другое действие (updateImages), который вызывает отправку, так как getImages не вызывает отправку. Помните, что возвращение асинхронного вызова - это обещание.

Другие вопросы по тегам