small medium large xlarge

The latest version of the book is P1.0, released over 2 years ago. If you've bought a PDF of the book and would like to update it to this version (for free), visit your home page.

By default this page displays the errata for the latest version of the book. If you have a previous version, select it here:

If you've found a new error, please submit it.

  • Typo
  • Tech. error
  • Suggestion
  • Maybe next edition
  • Not a problem
  • Reported in: P1.0 (11-Dec-17)
PDF page: ?
Chapter 4 Test Component Boundaries (reading on SafariBooksOnline)’s a good enough substitute if we assume that React itself correctly transl...more...
  • Reported in: P1.0 (15-Oct-17)
Paper page: 2
When running "npm test", jest reports the error: "Error: This promise must be present when running with -o." This is a known bug in Jest (issue #4419...more...
  • Reported in: P1.0 (08-Apr-18)
Paper page: 13
In Japanese with utf-8, countWords function does not work correctly. The following works fine. function countWords(text) { return text ? text...more...
  • Reported in: P1.0 (09-Nov-17)
Paper page: 14
For the WordCounter JSX, inclusion of the enclosing div tag messes up the format where the "Word count" and "Progress" are presented on the same line ...more...
  • Reported in: P1.0 (26-Dec-17)
PDF page: 38
"Once you understand what’s involved in the build, you can skip most of these steps by using react-create-app." The name of the package is reversed; i...more...
  • Reported in: P1.0 (12-Nov-17)
PDF page: 45
It says "Do the same with Counter, Editor, and SaveManager." But I think SaveManager should not be included here. Later on the next page it talks abou...more...
  • Reported in: P1.0 (22-Aug-18)
PDF page: 46
"To declare a function inside a class, use the function name followed by brackets," If this is describing the above declaration of render(), it sho...more...
  • Reported in: P1.0 (30-Mar-18)
PDF page: 50

jest --watch is only supported when a repo (git or hg) is set up. jest --watchAll is required for this example to work properly--M Chambers

  • Reported in: P1.0 (26-Dec-17)
PDF page: 72
"After the reducers process @INIT, the new state looks like this:" Here it is stated that the value of `loading` will start as `false`, but earlier we...more...
  • Reported in: P1.0 (20-Oct-17)
Paper page: 72
At the top of the page, it shows the default state. It indicates the default state of 'loading' should be 'false', but it really should be 'true', si...more...
  • Reported in: P1.0 (08-Aug-18)
Paper page: 77
Section “Redux fundamentals” ““That means you have to construct an entirely new state for every update, even making new copies of fields that remai...more...
  • Reported in: P1.0 (20-Oct-17)
Paper page: 79
In the MovieBox.js source code, the second property is named 'favorite'. In the paragraph following the source code, this property is mistakenly refe...more...
  • Reported in: P1.0 (24-Sep-17)
PDF page: 148
When copying over the files for movieguide from the project used in the previous chapters, we copy webpack.config.js but do not copy index.js. Webpack...more...
  • Reported in: P1.0 (24-Sep-17)
PDF page: 156
Amendment to my previous submission: I created an index.js file containing nothing but imports for React and createStore I then found the error I ha...more...
  • Reported in: P1.0 (27-Sep-17)
PDF page: 1592
Code is not indented -- everywhere -- when reading on Kindle on my iPad. Makes it extremely difficult to wade through the code examples. Never seen th...more...