Welcome to the Treehouse Community

Want to collaborate on code errors? Have bugs you need feedback on? Looking for an extra set of eyes on your latest project? Get support with fellow developers, designers, and programmers of all backgrounds and skill levels here with the Treehouse Community! While you're at it, check out some resources Treehouse students have shared here.

Looking to learn something new?

Treehouse offers a seven day free trial for new students. Get access to thousands of hours of content and join thousands of Treehouse students and alumni in the community today.

Start your free trial

JavaScript React Components (2018) Managing State and Data Flow Update the Players State Based on Previous State

Is there any issue with using prevState.players.push(newPlayer)?

Seems to be working for me, but not sure if there is an issue doing it this way in React.

1 Answer

Lewis Marshall
Lewis Marshall
22,673 Points

Since you are not allowed to mutate the state directly, you cannot simply push an item to an array. It doesn't leave the array intact but changes it. Instead there should be a new array created which is used to update the state. That's why Guil uses the spread operator to create a new array.

More info about adding an item to an array in react state - https://www.robinwieruch.de/react-state-array-add-update-remove#react-state-add-item-to-array