Следуя примеру
Я пытаюсь создать собственное приложение на Далее. js используя Redux
Но я не могу понять назначение следующих кодов в store. js file. Первый: `
const bindMiddleware = (middleware) => {
if (process.env.NODE_ENV !== 'production') {
const { composeWithDevTools } = require('redux-devtools-extension')
return composeWithDevTools(applyMiddleware(...middleware))
}
return applyMiddleware(...middleware)
}
И второй:
const reducer = (state, action) => {
if (action.type === HYDRATE) {
const nextState = {
...state, // use previous state
...action.payload, // apply delta from hydration
}
if (state.count) nextState.count = state.count // preserve count value on client side navigation
return nextState}
else {
return combinedReducer(state, action)
}
}
Почему в первом случае мы должны связывать Middleware, если мы можем просто сделать applyMiddleware(thunkMiddleware)
? во втором случае , как я понимаю, if(state.count)
относится к import count from './count/reducer'
Итак, мой вопрос: должен ли я сделать то же самое, если, например, у меня есть редуктор с информацией о пользователе if(state.userReducer)
и import userReducerfrom './user/userReducer'