In the JSX lesson you emphasize the .map() method saying how it is often used and how important it is to have a good understanding of it. Then in the project you tell us to use forEach(). Such terrible curriculum and assessment design.
The project is not in any way an extension of the lesson. We are asked to use the iterator that does the job.
.map() returns an array mapping whereas
.forEach() executes code on an array’s elements. There will be plenty of opportunity to use
.map() in the future. At this point just feeling comfortable with the range of iterators at our disposal is the optimum goal.
In the same vein, we haven’t yet been exposed to the concept of an event target, but expected to know the syntax
e.target. And in general, not getting console errors made this particularly hard to debug. Overall a pretty frustrating exercise.
P.S. The quiz right after this exercise asks about DOM render order and differences between virtual and and non-virtual DOM. Also not yet covered.
Did you also complete the HTML and CSS tracks? The ‘Chore Door’ project goes into events and event handlers.
Is “Chore Door” part of HTML or CSS courses?
Aside: consistent terminology avoids additional confusion. Are you referring to what the website calls “courses” as “tracks”, or is that something else?
And the quiz? Right now it’s asking me what the virtual DOM attempts to solve, which was not covered yet in this course, but is now a question in this course.
It does cover it though. In the first lesson named “Intro to JSX”, exercise 14 named “The Virtual DOM” ends with the following:
React accomplishes this thanks to something called the virtual DOM. Before moving on to the end of the lesson, read this article about the Virtual DOM.
That link is to an article prepared by Codecademy about that subject.
Ahh, I see. I guess I didn’t read it because clicking on links in courses doesn’t do anything, at least not on my machine.