Ich habe eine React/Redux-App, die sich um eine interaktive Liste von Elementen für einen Echtzeitverkauf (Auktionen) kümmert . Meine <div id='app'></div>
kümmert sich nur um die Liste.Redux: wo Interaktion mit dem DOM, die durch eine Aktion aber Änderungen außerhalb der React App ausgelöst wird
Das Problem ist, wenn und Artikel verkauft wird, muss ich es zu einer anderen Liste hinzufügen, die nicht in der React App ist. Da die Liste auf dem Server gerendert wird und die einzige erforderliche Interaktion darin besteht, diese verkauften Elemente hinzuzufügen.
Im Moment mache ich so etwas wie diese
// redux thunk action
export const sellItem = (item) => (dispatch) => {
dispatch(requestSellItem(item)); // set loading state
return fetch('api/sell_item/' + item.id)
.then(response => response.json())
.then(json => {
// remove the item from the React list
dispatch(sellItemSuccess(item.id));
// append the item to the sold items list
// this is the function that puts the sold item in the
// list outside of the React app
appendSoldItem(item);
})
.catch(err => {
// do fallback here
dispatch(sellItemError(err));
});
};
Ich frage mich, ob dies der richtige Ort ist, es zu tun, oder soll ich es woanders platzieren?
redux-Saga ist auch ein guter Ort, um damit zu umgehen (aber es ist eigentlich auch eine Middleware) –