तुम मुझे अपवाद Unexpected key "userName" found in preloadedState argument passed to createStore. Expected to find one of the known reducer keys instead: "default". Unexpected keys will be ignored.
Redux: अप्रत्याशित preloadedState तर्क CreateStore
साथ मदद कर सकते हैं मैं इस Link की खोज की है, लेकिन यह मेरी मदद नहीं करता है। मैं कुछ भी नहीं कर सकता, शायद इस भाग को दस्तावेज़ीकरण से: सादे ऑब्जेक्ट को उसी आकार के साथ
क्या आप मुझे मेरे उदाहरण पर मेरी गलती का पर्दाफाश कर सकते हैं?
import React from "react";
import ReactDOM from "react-dom";
import { Provider } from 'react-redux';
import { createStore, combineReducers, applyMiddleware } from 'redux';
import App from './containers/App.jsx';
import * as reducers from './reducers'
import types from './constants/actions';
const reducer = combineReducers(reducers);
const destination = document.querySelector("#container");
var store = createStore(reducer, {
userName : ''
});
ReactDOM.render(
<Provider store={store}>
<App/>
</Provider>,
destination
);
console.log(1)
store.subscribe(()=> {
console.log("-------------------------")
let s = store.getState()
console.log("STATE = " + s)
for (var k in s) {
if (s.hasOwnProperty(k)) {
console.log("k = " + k + "; value = " + s[k]);
}
}
})
store.dispatch({
type: types.LOAD_USER_NAME,
userName : "Oppps1"
})
मेरी कम करने: निष्पादन के बाद कंसोल में
import types from './../constants/actions'
export default function userNameReducer (state = {userName : 'N/A'}, action) {
console.log('inside reducer');
switch (action.type) {
case types.LOAD_USER_NAME:
console.log("!!!!!!!!!!!!!!!")
console.log("action.userName = " + action.userName)
for (var k in state) {
if (state.hasOwnProperty(k)) {
console.log("k = " + k + "; value = " + state[k]);
}
}
return action.userName;
default:
return state
}
}
परिणाम:
आपके रेड्यूसर शुद्ध कार्य होने चाहिए, इसलिए साइड इफेक्ट्स (console.log सामान) से छुटकारा पाएं –
@ इस्लाम इबाकाव धन्यवाद फॉर्म की सिफारिश है लेकिन यह समस्या –
है, क्या आपका मतलब यह है कि अब यह सही ढंग से woks है? –