React For Beginners — ReactForBeginners.com
Starter files for the React For Beginners course. Come Learn React with me!
The code in this repo meant to be a reference point for anyone following along with the video course.
Note - one of the dependencies is currently not working with Node.js 10.3, please use version 9.11.1 (or around that, 8.x and 9.x should work fine) until then.
cd
into catch-of-the-day
and follow along with the videos
Each numbered folder in stepped-solutions
contains the files for the beginning of each correspondingly numbered video, should you need them. So, if you need any code, pull the appropriate file into your catch-of-the-day
folder.
You are welcome to submit Pull Requests but I'd like to keep the code as similar as possible to the course content.
You are welcome to use this code in your own applications. If you would like to use it for training purposes, please shoot me a message first to make sure it's okay.
❓ I'm getting error "Pre-built binaries not found for grpc@1.10.1 and node@10.3.0" and "Tried to download(403): https://storage.googleapis.com....."
One of the dependencies is currently not working with Node.js 10.3, please use version 9.11.1 (or around that, 8.x and 9.x should work fine) until then. Don't sweat this as it's just build tooling and isn't related to the version of react you are using.
There are a few possible options:
- If you are on Sublime Text 2, you should Upgrade to Sublime Text 3.
- Some users have reported restarting works
- You can try the JavaScript Next syntax highlighter instead
Make sure you are in a file with the extension of .js
before you do this step - you can't set the default for a file without having a file open!
Restart your dev tools or your chrome browser entirely. They will only show up when you are viewing a React app - so make sure you test it on Facebook or another website that is running React. It won't work on your empty main.js
file until you import React from 'react'
.
There may be a few different causes for this:
- Webpack currently can't handle folder/file names that contain parentheses.
- Webpack also has problems running inside folders for Dropbox/Google Drive type services. Git is recommended for keeping your files in sync across multiple computers.
Be sure to select "Realtime database" as as your database type inside Firebase. If you created your database as a Cloud Firestore type, you can change it in the Database tab.
Firebase by default only allows logins from localhost or the Firebase website. You'll need to add your deploy URL to the Authorized Domains in the Sign-in method area of your Firebase console.
In March 2018 I re-recorded this course. Here are the things that I've updated.
- Upgrade to React Router 4 Final API
- Use React 16.3
- Move to external PropTypes Package
- Use React's new Refs API, remove function refs
- Remove all use of constructors and super() - use class properties instead
- Better explain binding, use of
this
and component instances - Moved from React-addons-css-transition-group to react-transition-group and upgraded from 1.x to 2.x
- Use official Firebase package for Auth as re-base is now only for data binding
- Move promise based code to async/await
- Show how to return multiple elements with React.Fragment
Here is the .htaccess file we use in the apache deployment video
RewriteBase /
RewriteRule ^index\.html$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.html [L]