Я пытаюсь сделать несколько изменений в магазине, но не отображать до тех пор, пока все изменения не будут выполнены. Я хотел сделать это с помощью редуктора.React + Redux, как визуализировать не после каждой отправки, но после нескольких?
Вот мое действие Создатель:
function addProp(name, value) {
return { type:'ADD_PROP', name, value }
}
function multiGeoChanges(...changes) {
// my goal here is to make multiple changes to geo, and make sure that react doesnt update the render till the end
return async function(dispatch, getState) {
for (let change of changes) {
dispatch(change);
await promiseTimeout(2000);
}
}
}
рассылает мой асинхронные действия создателя, как это:
store.dispatch(multiGeoChanges(addProp(1, "val1"), addProp(2, "val2"), addProp(3, "val3")));
Однако это вызывает реакцию, чтобы сделать после каждого dispatch
. Я новичок в redux-thunk, я никогда не использовал асинхронное промежуточное ПО, но я думал, что это может помочь мне здесь.
Aw штопать. Спасибо за этот ответ. Я стараюсь не попасть в слишком много библиотек. Просто сократите, реагируйте-маршрутизатор и реагируйте. Кажется, я просто не могу найти применение для сокращения. Я чувствую, что это должно мне помочь, но я не понимаю, я, похоже, умею делать все без него. – Noitidart
@Noitidart - thunk действительно очень полезен для получения удаленных данных, особенно если вам нужно сделать несколько звонков от одного действия. – Snekse
Спасибо @Snekse Я использую redux-saga сейчас дни :) – Noitidart