Je suis nouveau à Redux. J'ai tapé un simple morceau de code qui ne dispose que de renvoyer le nom "Mike"
Cependant, lorsque je clique sur le ci-dessous est mon code. Toute aide serait vraiment appréciée p> BotverClick () Code> Fonction que j'ai créée. Rien n'est envoyé aussi je ne suis pas sûr comment je Peut montrer la valeur expédiée "Mike" où il est indiqué "Salut mon nom est ..." p>
3 Réponses :
Je ne peux pas tester votre code en ce moment, mais vous pouvez essayer avec ceci: espère qu'il aide p> p>
Désolé, mais il vous manque trop de concepts Redux, check Le redux Doc s'il vous plaît , ce code devrait fonctionner:
import React from "react";
import { createStore } from "redux";
import { connect, Provider } from "react-redux";
const CHANGE_NAME = "CHANGE_NAME";
const changeNameAction = name => ({
type: CHANGE_NAME,
payload: name
});
const initialState = { name: "Taym" };
const changeName = (state = initialState, action) => {
const { type, payload } = action;
switch (type) {
case CHANGE_NAME:
return Object.assign({}, state, { name: payload });
default:
return state;
}
};
const store = createStore(changeName);
const App = ({ buttonClick }) => {
return (
<Provider store={store}>
<div className="App">
<NameComponent />
</div>
</Provider>
);
};
export default App;
const ConnectedNameComponent = ({ buttonClick, name }) => {
return (
<>
<div> Hi my name is {name} </div>
<div>
<button onClick={() => buttonClick("Mike")}>Change name</button>
</div>
</>
);
};
const mapStateProps = state => {
return {
name: state.name
};
};
const mapDispatchToProps = dispatch => {
return {
buttonClick(name) {
dispatch(changeNameAction(name));
}
};
};
const NameComponent = connect(
mapStateProps,
mapDispatchToProps
)(ConnectedNameComponent);
Merci beaucoup pour vos réponses. Taym tu répare a fonctionné. J'ai réalisé ce que je n'avais pas utilisé l'opérateur de l'État.
Donc avant que mon action soit comme celle-ci p>
Export const Changename = (état, action) => { p> alors j'ai changé comme ça p>