Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[3pt] Implement mission joining - Actions #10

Closed
samwel-mongare opened this issue Jan 24, 2022 · 0 comments · Fixed by #32
Closed

[3pt] Implement mission joining - Actions #10

samwel-mongare opened this issue Jan 24, 2022 · 0 comments · Fixed by #32
Assignees
Labels
enhancement New feature or request

Comments

@samwel-mongare
Copy link
Owner

  • When a user clicks the "Join Mission" button, action needs to be dispatched to update the store. You need to get the ID of the selected mission and update the state. Remember you mustn't mutate the state. Instead, you need to return a new state object with all missions, but the selected mission will have an extra key reserved with its value set to true. You could use a JS filter() or map() to set the value of the new state - i.e.:
const newState = state.map(rocket => {
    if(mission.id !== id) 
        return mission;
    return { ...mission, reserved: true };
});
  • Regardless of which method you choose, make sure you place all your logic in the reducer. In the React view file, you should only dispatch the action with the correct rocket ID as an argument.
@nevisende nevisende self-assigned this Jan 24, 2022
@samwel-mongare samwel-mongare linked a pull request Jan 25, 2022 that will close this issue
@samwel-mongare samwel-mongare added the enhancement New feature or request label Jan 25, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants