Hallo, ich versuche Redux vor kurzem. Ich wollte einen Zähler für die Praxis bauen. Es besteht aus zwei Tasten (plus & minus) und einem Zähler mit der aktuellen Nummer.Redux Requisiten funktioniert nicht
Die Aktionsersteller und Reduzierer sind mit den entsprechenden Komponenten verbunden. Das Geschäft ist auch mit dem Anbieter verbunden. Aber ich weiß nicht warum, aber die Anfangszahl (Status wurde als Requisite an die Gegenkomponente weitergegeben) wird nicht angezeigt?
Javascript:
/*--Reducers--*/
const reducer_num = (state=0,action)=>{
switch(action.type){
case "PLUS":
case "MINUS":
return state + action.payload;
default:
return state;
}
}
const rootReducer = Redux.combineReducers({
num: reducer_num
});
/*--Action creators--*/
const action_plus =()=>{
return {
type: "PLUS",
payload: 1
};
}
const action_minus =()=>{
return {
type: "MINUS",
payload: -1
};
}
/*--Components & containers--*/
//counter
const Counter = (props)=>{
return (<div className="counter">{props.num}</div>);
}
const mapStateToProps=(state)=>{
return {num: state.num};
}
ReactRedux.connect(mapStateToProps)(Counter);
//plus
const Plus = (props)=>{
return (<div className="plus" onClick={props.plus}>+</div>);
}
const mapDispatchToProps_plus = (dispatch)=>{
return Redux.bindActionCreators({plus: action_plus},dispatch);
}
ReactRedux.connect(mapDispatchToProps_plus)(Plus);
//minus
const Minus = (props)=>{
return (<div onClick={props.minus} className="minus">-</div>);
}
const mapDispatchToProps_minus = (dispatch)=>{
return Redux.bindActionCreators({minus: action_minus},dispatch);
}
ReactRedux.connect(mapDispatchToProps_minus)(Minus);
// Provider & store
const Provider = ReactRedux.Provider,
store = Redux.createStore(rootReducer);
//App
const App =()=>{
return (
<Provider store={store}>
<div className="container">
<Plus/>
<Counter/>
<Minus/>
</div>
</Provider>
);
}
ReactDOM.render(<App/>,document.body);
Vielen Dank für jede Hilfe.
Thank you! Ich verstehe jetzt –