
React Key Concepts
By :

Thanks to this props concept, components become actually reusable, instead of just being theoretically reusable.
Outputting three <GoalItem>
components without any extra configuration could only render the same goal three times since the goal text (and any other data you might need) would have to be hardcoded into the component function.
By using props as described above, the same component can be used multiple times with different configurations. That allows you to define some general markup structure and logic once (in the component function) but then use it as often as needed with different configurations.
And if that sounds familiar, that is indeed exactly the same idea as for regular JavaScript (or any other programming language) functions. You define logic once, and you can then call it multiple times with different inputs to receive different results. It's the same for components—at least when embracing this props concept.