ΠΠΎΠ³ΡΡ Π»ΠΈ ΠΊΠΎΠΌΠ±ΠΈΠ½ΠΈΡΠΎΠ²Π°ΡΡΡΡ ΡΠ΅Π΄ΡΠΊΡΠΎΡΡ Π±ΡΡΡ Π²Π»ΠΎΠΆΠ΅Π½Π½ΡΠΌΠΈ ΠΈΠ»ΠΈ Π΅Π³ΠΎ ΡΠ»Π΅Π΄ΡΠ΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΎΠ΄ΠΈΠ½ ΡΠ°Π·, ΡΡΠΎΠ±Ρ ΠΎΠ±ΡΠ΅Π΄ΠΈΠ½ΠΈΡΡ Π²ΡΠ΅ ΡΠ΅Π΄ΡΠΊΡΠΎΡΡ Π² ΠΎΠ΄ΠΈΠ½?
ΠΡΠΎ ΠΏΠ»ΠΎΡ
ΠΎΠΉ ΠΏΠΎΠ΄Ρ
ΠΎΠ΄ ΠΊ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ Π΄ΡΠ΅Π²ΠΎΠ²ΠΈΠ΄Π½ΠΎΠΉ ΡΡΡΡΠΊΡΡΡΡ Ρ
ΡΠ°Π½ΠΈΠ»ΠΈΡΠ° ΠΏΡΡΠ΅ΠΌ ΠΊΠΎΠΌΠ±ΠΈΠ½ΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΡΠ΅Π΄ΡΠΊΡΠΎΡΠΎΠ² Π½Π° ΠΊΠ°ΠΆΠ΄ΠΎΠΌ ΡΡΠ°ΠΏΠ΅?
ΠΠ»ΠΈ, Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ, Π΅ΡΡΡ Π΄ΡΡΠ³ΠΎΠΉ ΡΠΏΠΎΡΠΎΠ± ΡΠΎΡ
ΡΠ°Π½ΠΈΡΡ ΠΊΠΎΡΠ½Π΅Π²ΠΎΠ΅ Ρ
ΡΠ°Π½ΠΈΠ»ΠΈΡΠ΅ Π² ΡΠΈΡΡΠΎΡΠ΅ (Π½Π΅ Ρ
ΠΎΡΠΈΡΠ΅ ΠΏΠΎΠΌΠ΅ΡΠ°ΡΡ Π²ΡΠ΅ Π»ΠΈΡΡΡΡ Π΄Π΅ΡΠ΅Π²ΡΠ΅Π² Π² ΠΊΠΎΡΠ½Π΅Π²ΠΎΠ΅ Ρ
ΡΠ°Π½ΠΈΠ»ΠΈΡΠ΅)
ΠΡΠΈΠΌΠ΅Ρ ΡΡΡΡΠΊΡΡΡΡ ΠΏΡΠ΅Π²Π΄ΠΎΠΊΠΎΠ΄Π°:
rootReducer = combineReducers({
router, // redux-react-router reducer
account: combineReducers({
profile: combineReducers({
info, // reducer function
credentials // reducer function
}),
billing // reducer function
}),
// ... other combineReducers
})
});
ΠΠΎΠ½Π΅ΡΠ½ΠΎ, ΠΎΡΠ»ΠΈΡΠ½Π°Ρ ΠΈΠ΄Π΅Ρ.
ΠΡΠΈΠ²Π΅Ρ, Ρ ΡΠ΅Π°Π»ΠΈΠ·ΡΡ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ CombinReducer,
// schoolReducer.js
export default combineReducers({
company: companyReducer,
profile: profileReducer,
});
// studentInfo.js
export default combineReducers({
student: studentReducer,
course: courseReducer,
});
//rootReducer.js
export default combineReducers({
school: schoolReducer,
student: studentInfo,
});
ΠΎΡΠΈΠ±ΠΊΠ°
Store does not have a valid reducer. Make sure the argument passed to combineReducers is an object whose values are reducers.
@ Justinlazaro-ubidy:
ΠΡΠΎ Π±Π°Π³-ΡΡΠ΅ΠΊΠ΅Ρ, Π° Π½Π΅ ΡΠΈΡΡΠ΅ΠΌΠ° ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠΈ. ΠΠΎ Π²ΠΎΠΏΡΠΎΡΠ°ΠΌ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅ Stack Overflow ΠΈΠ»ΠΈ Reactiflux, Π³Π΄Π΅ Π³ΠΎΡΠ°Π·Π΄ΠΎ Π±ΠΎΠ»ΡΡΠ΅ Π»ΡΠ΄Π΅ΠΉ Π³ΠΎΡΠΎΠ²Ρ ΠΏΠΎΠΌΠΎΡΡ Π²Π°ΠΌ - Π²Ρ, Π²Π΅ΡΠΎΡΡΠ½ΠΎ, Π±ΡΡΡΡΠ΅Π΅ ΠΏΠΎΠ»ΡΡΠΈΡΠ΅ Π»ΡΡΡΠΈΠΉ ΠΎΡΠ²Π΅Ρ. ΠΠ»Π°Π³ΠΎΠ΄Π°ΡΡ!
Π‘Π°ΠΌΡΠΉ ΠΏΠΎΠ»Π΅Π·Π½ΡΠΉ ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΠΉ
ΠΠΎΠ½Π΅ΡΠ½ΠΎ, ΠΎΡΠ»ΠΈΡΠ½Π°Ρ ΠΈΠ΄Π΅Ρ.