Core concepts
Everything a component is made of. A reader who has finished these can build a page without looking anything else up.
What you write
- Components — a class with a
render(). What it puts on the page is what that returns, which is why a component is not an element. - JSX — the markup syntax: values, attributes, children, and what is refused.
Where a value lives
- State — a field the render reads, so changing it redraws.
- Props — what a parent hands down, read-only and reactive.
- Derived values — worked out from the two above, cached until they move.
- One per component, or one per item —
@computeor@memoized, and the question that decides.
When things happen
- Events — handlers on your own elements, and decorators for the window and the document.
- Lifecycle — created, mounted, updated, destroyed, and what belongs in each.
- Timers — a clock or a delay, cleared for you.
- Subscriptions — a store, a socket, an observer, and the cleanup that comes with it.
Reaching the page itself
- Refs — the real element, to focus, measure, or hand to a library.
Next
- Components — if you are starting here.
- Composition — putting components together once each one works.
- Every decorator, at a glance — the table, once the names are familiar.