zu erstellen meine Frage mag ein bisschen dumm klingen, ich lerne immer noch reagieren und redux. Ich habe user
in meiner app und das ist Schema meines Benutzerstatus:Wie Sub-Reducer zu kombinieren, ohne separaten Eintrag im Zustand in redux
user : {
error,
isAuthed,
authToken,
isFetching,
currentRole,
roles : ['role', 'role'],
paymentsInfo: [{invoice}, {invoice}, {invoice}]
}
Hier ist mein mein Minderer für Benutzer:
function user(state = initialUserState, action) {
switch (action.type) {
case 'FETCHING_USER': {
return {
...state,
isFetching : true
}
}
case 'FETCHING_USER_ERROR': {
return {
...state,
isFetching : false,
error : action.error
}
}
case 'FETCHING_USER_SUCCESS': {
return {
// update user state
}
}
// payments reducer
case 'FETCH_PAYMENT_DETAILS': {
return {
...state,
payments : payments(state.payments, action)
}
}
case 'FETCH_PAYMENT_SUCCESS': {
return {
...state,
payments : payments(state.payments, action)
}
}
default:
return state
}
}
Ich Zahlungen Minderer in verschiedenen Datei und letzten 3 Fälle beibehalten in user
Spiele Minderer zum Handeln von payments
Minderer:
function payments(state = initialPaymentState, action) {
switch (action.type) {
case 'FETCH_PAYMENT_DETAILS' : {
return {
...state,
isFetching : true
}
}
case 'FETCH_PAYMENT_ERROR' : {
return {
...state,
isFetching : false,
error : action.error
}
}
case 'FETCH_PAYMENT_SUCCESS' : {
return {
...state,
isFetching : false,
error : '',
invoices : action.paymentDetails
}
}
default:
return state
}
}
ich bin nicht getrennten Zustand für 01 Aufrechterhaltung, aber wenn ich Zahlungsdaten von API erhalte, muss ich das in user
Zustand aktualisieren. Nun meine Frage ist, dass ist es eine Möglichkeit, user
und payments
Reduzierungen miteinander zu kombinieren, ohne eigenen Staat zu schaffen für payments
Was meinst du - kombinieren sie zusammen? –
@ Radio- mit kombinieren Ich meinte, dass ich nicht die Fälle der 'payments' Methode in 'user' Reducer schreiben will und gleichzeitig möchte ich beide in separaten Dateien und' payments' sollte keine neue Instanz in main erstellen State Tree ist Teil von 'user' (siehe Schema) –