diff --git a/curriculum/challenges/english/03-front-end-libraries/react-and-redux/connect-redux-to-the-messages-app.english.md b/curriculum/challenges/english/03-front-end-libraries/react-and-redux/connect-redux-to-the-messages-app.english.md index 0aa0f224d7..4598d41df8 100644 --- a/curriculum/challenges/english/03-front-end-libraries/react-and-redux/connect-redux-to-the-messages-app.english.md +++ b/curriculum/challenges/english/03-front-end-libraries/react-and-redux/connect-redux-to-the-messages-app.english.md @@ -85,10 +85,12 @@ class Presentational extends React.Component { }); } submitMessage() { - const currentMessage = this.state.input; - this.setState({ - input: '', - messages: this.state.messages.concat(currentMessage) + this.setState((state) => { + const currentMessage = state.input; + return { + input: '', + messages: state.messages.concat(currentMessage) + }; }); } render() { @@ -202,10 +204,12 @@ class Presentational extends React.Component { }); } submitMessage() { - const currentMessage = this.state.input; - this.setState({ - input: '', - messages: this.state.messages.concat(currentMessage) + this.setState((state) => { + const currentMessage = state.input; + return { + input: '', + messages: state.messages.concat(currentMessage) + }; }); } render() { diff --git a/curriculum/challenges/english/03-front-end-libraries/react-and-redux/extract-local-state-into-redux.english.md b/curriculum/challenges/english/03-front-end-libraries/react-and-redux/extract-local-state-into-redux.english.md index 414c65c665..b2ee6f2e27 100644 --- a/curriculum/challenges/english/03-front-end-libraries/react-and-redux/extract-local-state-into-redux.english.md +++ b/curriculum/challenges/english/03-front-end-libraries/react-and-redux/extract-local-state-into-redux.english.md @@ -97,10 +97,10 @@ class Presentational extends React.Component { }); } submitMessage() { - this.setState({ + this.setState((state) => ({ input: '', - messages: this.state.messages.concat(this.state.input) - }); + messages: state.messages.concat(state.input) + })); } render() { return ( diff --git a/curriculum/challenges/english/03-front-end-libraries/react-and-redux/manage-state-locally-first.english.md b/curriculum/challenges/english/03-front-end-libraries/react-and-redux/manage-state-locally-first.english.md index 4b932760ec..d9ba1dd8bb 100644 --- a/curriculum/challenges/english/03-front-end-libraries/react-and-redux/manage-state-locally-first.english.md +++ b/curriculum/challenges/english/03-front-end-libraries/react-and-redux/manage-state-locally-first.english.md @@ -107,10 +107,12 @@ class DisplayMessages extends React.Component { }); } submitMessage() { - const currentMessage = this.state.input; - this.setState({ - input: '', - messages: this.state.messages.concat(currentMessage) + this.setState((state) => { + const currentMessage = state.input; + return { + input: '', + messages: state.messages.concat(currentMessage) + }; }); } render() { diff --git a/curriculum/challenges/english/03-front-end-libraries/react-and-redux/use-provider-to-connect-redux-to-react.english.md b/curriculum/challenges/english/03-front-end-libraries/react-and-redux/use-provider-to-connect-redux-to-react.english.md index d0c2134711..8e09892baa 100644 --- a/curriculum/challenges/english/03-front-end-libraries/react-and-redux/use-provider-to-connect-redux-to-react.english.md +++ b/curriculum/challenges/english/03-front-end-libraries/react-and-redux/use-provider-to-connect-redux-to-react.english.md @@ -93,11 +93,13 @@ class DisplayMessages extends React.Component { input: event.target.value }); } - submitMessage() { - const currentMessage = this.state.input; - this.setState({ - input: '', - messages: this.state.messages.concat(currentMessage) + submitMessage() { + this.setState((state) => { + const currentMessage = state.input; + return { + input: '', + messages: state.messages.concat(currentMessage) + }; }); } render() { @@ -191,10 +193,12 @@ class DisplayMessages extends React.Component { }); } submitMessage() { - const currentMessage = this.state.input; - this.setState({ - input: '', - messages: this.state.messages.concat(currentMessage) + this.setState((state) => { + const currentMessage = state.input; + return { + input: '', + messages: state.messages.concat(currentMessage) + }; }); } render() { diff --git a/curriculum/challenges/english/03-front-end-libraries/react/add-event-listeners.english.md b/curriculum/challenges/english/03-front-end-libraries/react/add-event-listeners.english.md index 4c3f1fc13c..7057cba1a6 100644 --- a/curriculum/challenges/english/03-front-end-libraries/react/add-event-listeners.english.md +++ b/curriculum/challenges/english/03-front-end-libraries/react/add-event-listeners.english.md @@ -61,9 +61,9 @@ class MyComponent extends React.Component { } // change code above this line handleEnter() { - this.setState({ - message: this.state.message + 'You pressed the enter key! ' - }); + this.setState((state) => ({ + message: state.message + 'You pressed the enter key! ' + })); } handleKeyPress(event) { if (event.keyCode === 13) { @@ -118,9 +118,9 @@ class MyComponent extends React.Component { // change code above this line } handleEnter() { - this.setState({ - message: this.state.message + 'You pressed the enter key! ' - }); + this.setState((state) => ({ + message: state.message + 'You pressed the enter key! ' + })); } handleKeyPress(event) { if (event.keyCode === 13) { diff --git a/curriculum/challenges/english/03-front-end-libraries/react/create-a-controlled-form.english.md b/curriculum/challenges/english/03-front-end-libraries/react/create-a-controlled-form.english.md index 9b8bc97bc4..510dc41a42 100644 --- a/curriculum/challenges/english/03-front-end-libraries/react/create-a-controlled-form.english.md +++ b/curriculum/challenges/english/03-front-end-libraries/react/create-a-controlled-form.english.md @@ -120,9 +120,9 @@ class MyForm extends React.Component { } handleSubmit(event) { event.preventDefault() - this.setState({ - submit: this.state.input - }); + this.setState((state) => ({ + submit: state.input + })); } render() { return ( diff --git a/curriculum/challenges/english/03-front-end-libraries/react/optimize-re-renders-with-shouldcomponentupdate.english.md b/curriculum/challenges/english/03-front-end-libraries/react/optimize-re-renders-with-shouldcomponentupdate.english.md index 047da6e0fa..6d2409d7b4 100644 --- a/curriculum/challenges/english/03-front-end-libraries/react/optimize-re-renders-with-shouldcomponentupdate.english.md +++ b/curriculum/challenges/english/03-front-end-libraries/react/optimize-re-renders-with-shouldcomponentupdate.english.md @@ -69,9 +69,9 @@ class Controller extends React.Component { this.addValue = this.addValue.bind(this); } addValue() { - this.setState({ - value: this.state.value + 1 - }); + this.setState((state) => ({ + value: state.value + 1 + })); } render() { return ( @@ -130,9 +130,9 @@ class Controller extends React.Component { this.addValue = this.addValue.bind(this); } addValue() { - this.setState({ - value: this.state.value + 1 - }); + this.setState((state) => ({ + value: state.value + 1 + })); } render() { return ( diff --git a/curriculum/challenges/english/03-front-end-libraries/react/render-with-an-if-else-condition.english.md b/curriculum/challenges/english/03-front-end-libraries/react/render-with-an-if-else-condition.english.md index 201273a35f..5cc3455dc4 100644 --- a/curriculum/challenges/english/03-front-end-libraries/react/render-with-an-if-else-condition.english.md +++ b/curriculum/challenges/english/03-front-end-libraries/react/render-with-an-if-else-condition.english.md @@ -51,9 +51,9 @@ class MyComponent extends React.Component { this.toggleDisplay = this.toggleDisplay.bind(this); } toggleDisplay() { - this.setState({ - display: !this.state.display - }); + this.setState((state) => ({ + display: !state.display + })); } render() { // change code below this line @@ -96,9 +96,9 @@ class MyComponent extends React.Component { this.toggleDisplay = this.toggleDisplay.bind(this); } toggleDisplay() { - this.setState({ - display: !this.state.display - }); + this.setState((state) => ({ + display: !state.display + })); } render() { // change code below this line