2015-08-03 5 views
0

Я создаю приложение стиля опроса, используя React + Flux. Когда пользователь отправляет ответ, я запускаю действие, которое запускает запрос ajax для сохранения ответа в базе данных (ajax-запрос № 1). Затем мне нужно сделать запрос ajax, чтобы получить следующий вопрос (ajax request # 2).React + Flux: Действие вызывает синхронные запросы ajax

Запрос № 2 зависит от данных, которые # 1 записывает в базу данных. Я бы хотел избежать ответа на следующий вопрос при создании ответа. Любые предложения о том, где/как лучше всего запускать №2, чтобы мы могли быть уверены, № 1 закончили?

Благодаря

+0

Есть ли причина, по которой вы хотите избежать следующего вопроса при создании ответа? – eddyjs

+0

Главным образом, чтобы каждая конечная точка API была единственной проблемой. Это, вероятно, маршрут, который я в конечном итоге возьму, но если ничего лучше не придет. – Nathan

ответ

0

В пределах вашей функции успеха Ajax, вы можете позволить AppDispatcher объявить что-то вроде QUESTION_ANSWERED, передавая номер вопроса.

Магазин теперь может слушать это событие, задать вопрос только что ответил и испустить его событие CHANGE.

Ваш компонент опроса может слушать это событие и, когда он получает уведомление из магазина, создает новое действие для получения следующего вопроса.

Это дает вам отдельные конечные точки (которые я согласен с вами предпочтительнее).

HTH

+0

Вам понравилось бы, используя действия? –

Смежные вопросы