Learn Advanced React Hooks workshop
๐ฅ Advanced React APIs
Learn the more advanced React APIs and different use cases to enable great user experiences.Weโll look at some of the more advanced hooks and APIs and ways they can be used to optimize your components and custom hooks. We'll consider each API with common use cases you'll run into in your applications.
[![Build Status][build-badge]][build] [![GPL 3.0 License][license-badge]][license] [![Code of Conduct][coc-badge]][coc]
Prerequisites
- You should be experienced with
useState,useEffect, anduseRef.
Pre-workshop Resources
Here are some resources you can read before taking the workshop to get you up to speed on some of the tools and concepts we'll be covering:
- Should I useState or useReducer?
- How to Implement useState with useReducer
- useEffect vs useLayoutEffect
- Imperative vs Declarative Programming
System Requirements
- [git][git] v2.18 or greater
- [NodeJS][node] v20 or greater
- [npm][npm] v8 or greater
PATH. To verify things are set up
properly, you can run this:
git --version
node --version
npm --version
If you have trouble with any of these, learn more about the PATH environment variable and how to fix it here for [windows][win-path] or [mac/linux][mac-path].
Setup
Use the Epic Workshop CLI to get this setup:
nonumber
npx --yes epicshop@latest add advanced-react-apis
If you experience errors here, please open [an issue][issue] with as many details as you can offer.
Starting the app
Once you have the setup finished, you can start the app with:
npm start
The Workshop App
Learn all about the workshop app on the Epic Web Getting Started Guide.
[npm]: https://www.npmjs.com/ [node]: https://nodejs.org [git]: https://git-scm.com/ [build-badge]: https://img.shields.io/github/actions/workflow/status/epicweb-dev/advanced-react-apis/validate.yml?branch=main&logo=github&style=flat-square [build]: https://github.com/epicweb-dev/advanced-react-apis/actions?query=workflow%3Avalidate [license-badge]: https://img.shields.io/badge/license-GPL%203.0%20License-blue.svg?style=flat-square [license]: https://github.com/epicweb-dev/advanced-react-apis/blob/main/LICENSE.md [coc-badge]: https://img.shields.io/badge/code%20of-conduct-ff69b4.svg?style=flat-square [coc]: https://kentcdodds.com/conduct [win-path]: https://www.howtogeek.com/118594/how-to-edit-your-system-path-for-easy-command-line-access/ [mac-path]: http://stackoverflow.com/a/24322978/971592 [issue]: https://github.com/epicweb-dev/advanced-react-apis/issues/new
