My take,
- the fact that it is not the default when you go through the react docs is kind of frustrating.
https://reactjs.org/docs/hooks-intro.html
^ I would read through 1-8
blog-posts from:
log-rocket, kent c dodds, or tweets from dan abrimov.
The only thing that is super helpful to know with react class components is
an understanding of the lifecycle methods and how rendering works in react:
https://reactjs.org/docs/react-component.html
Which has this document:
https://projects.wojtekmaj.pl/react-lifecycle-methods-diagram/
For the most part with react hooks the most used hooks in a project are often
useState, useEffect and useRef
The virtual dom diffs the actual dom and determines what needs to be committed
https://kentcdodds.com/blog/fix-the-slow-render-before-you-fix-the-re-render
The "render" phase: create React elements React.createElement (learn more)
The "reconciliation" phase: compare previous elements with the new ones (learn more)
The "commit" phase: update the DOM (if needed).
https://kentcdodds.com/blog/react-hooks-pitfalls
React is definitely a good language to start with,
Even though it is like the wild wild west
everyone does their own thing.
React is simple, but here are some helpful patterns to use:
https://gist.github.com/MichaelDimmitt/3755fc011e4404411b02d0c17cb029d6
https://gist.github.com/MichaelDimmitt/6534f9e91183dba9825ede604e064394
logic tests, (often these are unit tests)
- testing functions with different inputs and expecting certain outputs.
- Rendering component trees in a simplified test environment and asserting on their output.
https://reactjs.org/docs/testing.html
https://gist.github.com/MichaelDimmitt/6a6bb229b6b4295dd29afe57749dbd93
^ most of the tests I write are very similar to this template.
https://youtu.be/eg_TFYF_cKM?t=122
https://bengry.medium.com/testing-dates-and-timezones-using-jest-10a6a6ecf375
Conceptual javascript video, event loop
- promises + async side effects. https://www.youtube.com/watch?v=8aGhZQkoFbQ
https://www.youtube.com/watch?v=Wm_xI7KntDs&ab_channel=uidotdev
https://kentcdodds.com/blog/react-hooks-pitfalls
https://kentcdodds.com/blog/fix-the-slow-render-before-you-fix-the-re-render
https://www.youtube.com/watch?v=KWh-9-JIUAQ&ab_channel=KentC.Dodds
Touches on a lot of items we consider when building a react app
https://youtu.be/aXVpX7eRRd8?t=349
Javascript performance considerations (addy osmani)
https://www.youtube.com/watch?v=X9eRLElSW1c
10k or bust talk (from 2018)
https://www.youtube.com/watch?v=7OcYgDmrJd4
- bundle size configuration
- network throttling
- babel preset configs
- lazy loading / tree shaking, back when lazy loading was new 😄
- more stuff
some slides on css that people enjoy
https://docs.google.com/presentation/d/1-cCZS6v54BGjq9vzvo3gWuH3UOQvi9AB1ewXoosVxj8/edit?usp=sharing