Tengo una pregunta simple.
Ahora, en mi aplicación Redux, tengo una tienda combinada, y cuando busco datos, se establece como parte del estado.
Luego, tengo un editor React que administra el estado a través de Redux. Cuando el usuario hace clic en Editar, todos los campos se vuelven editables. Puede perder el tiempo y luego hacer clic en el botón 'Descartar' y volver al estado inicial de los datos obtenidos.
Estaba intentando hacer una copia profunda de los datos obtenidos originales (después de que el usuario los modifique), pero después de eso obtuve los datos adecuados en mi tienda, pero la vista aún muestra el modyfined (está conectado por te react-redux a la tienda).
Entonces, mi pregunta es, cómo hacerlo correctamente para que la vista muestre estos datos. A continuación se muestra mi reductor de editor.
case editorActions.DISCARD_CHANGES: return { ...state, editing: false, data: { ...state.data, ...mapGistToData(payload) } };Y le paso datos originales así:
onDiscardClick={discardChanges.bind(null, orginalGist)}que viene de
orginal: deepcopy(payload),Suponga que los datos se almacenan en "datos" en el estado.
Llame a actionCreator, pasando los datos originales de deepcopy durante la configuración inicial.
discardChange(original);Creador de acciones:
export function discardChange(originalData) { return { type: DISCARD_CHANGES, payload: originalData } }Reductor:
case editorActions.DISCARD_CHANGES: return { ...state, editing: false, data: editorActions.payload };