A data model is a representation of content and relationships between that content within an application. This holds the state and should be thought of as the single source of truth for what should display. The DOM, or document object model is the visual representation of our applications.
A framework is a bunch of code components that you can use to build common elements over and over again, however there are rules and guides for how those code components should be used together. Whereas a Library is also a group of useful code components, but there are fewer restrictions and guidelines. You can pretty much do what you want with a library, but not with a framework.
Because this can speed up development time and help track the state of your application to keep up with the users.
Components are like JavaScript functions. They accept arbitrary inputs (called “props”) and return React elements describing what should appear on the screen. They can be defined as classes or as functions.
JSX stands for JavaScript XML and it is a syntax extension to JS. With React it is used to describe what the UI should look like.
This stands for properties and they are passed into each function. Each class or function should not edit their props as that would be considered an "impure" function.
"State is similar to props, but it is private and fully controlled by the component." I understand state to be how the application updates. So if a component is submitted or clicked or deleted that changes the state and the display needs to go through recalibration and update the DOM.
This is referring to the component hierarchy within React, where the child elements receive data and then notify their parent elements with actions up. It reminds me of event bubbling.
The feedback above is aimed at helping you hone in your understanding of React. There is no need to resubmit, and the feedback doesn’t represent anything wrong; think of it as a reminder to help you keep your language and questions specific as you begin to practice and speak about React. Let me know if you have any questions!