इस त्रुटि के बारे में यहां कुछ भी नहीं ढूंढ पाया है "स्टोर में वैध रेड्यूसर नहीं है। सुनिश्चित करें कि तर्क गठबंधन करने के लिए पारित किया गया है रेड्यूसर एक ऐसा ऑब्जेक्ट है जिसका मूल्य reducers है।" शायद क्योंकि यह बहुत बेवकूफ है।रेडक्स स्टोर में वैध रेड्यूसर नहीं है
मेरे कम करने
export default function FriendListReducer(state = {friends : []}, action) {
switch (action.type) {
case 'ADD_FRIEND':
return [
{ friends : action.payload.friend }, ...state.friends
]
default:
return state;
}
return state;
}
Combiner
import { combineReducers } from 'redux';
import { FriendListReducer } from './FriendListReducer';
const rootReducer = combineReducers({
friends: FriendListReducer
});
export default rootReducer;
मेरे दुकान config
import { applyMiddleware, createStore } from 'redux';
import thunkMiddleware from 'redux-thunk';
import createLogger from 'redux-logger';
import rootReducer from '../reducers/reducers';
export default function configureStore(initialState = { friends: [] }) {
const logger = createLogger({
collapsed: true,
predicate:() =>
process.env.NODE_ENV === `development`, // eslint-disable-line no-unused-vars
});
const middleware = applyMiddleware(thunkMiddleware, logger);
const store = middleware(createStore)(rootReducer, initialState);
if (module.hot) {
// Enable Webpack hot module replacement for reducers
module.hot.accept('../reducers/reducers',() => {
const nextRootReducer = require('../reducers/reducers').default;
store.replaceReducer(nextRootReducer);
});
}
return store;
}
ऑब्जेक्ट में बदल गया और एक ही त्रुटि प्राप्त हो रही है – chrysillo
आपके "प्रारंभिक स्तर" मान जो आप स्टोर में जा रहे हैं वह उस संरचना से मेल नहीं खा रहा है जिसे आप 'combineReducers' का उपयोग करके बना रहे हैं। आप 'FriendListReducer' नामक फ़ील्ड 'combineReducers' दे रहे हैं, लेकिन स्टोर प्रारंभिक स्थिति में 'मित्र' हैं। आपको उन मैच को एक या दूसरे तरीके से बनाना होगा। चूंकि वे मेल नहीं खाते हैं, फिर भी आपको एक ही समस्या है। – markerikson
मैंने कोड अपडेट किया है और अभी भी वही त्रुटि प्राप्त कर रहा है, यहां अपडेट किया गया कोड – chrysillo