Когда использовать диспетчеризацию с потоком 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
не вызывает отправку. Помните, что возвращение асинхронного вызова - это обещание.