LLMSkillHub
mirroredCopied from boshi-xixixi/TraeSkill under MIT. boshi-xixixi has not claimed this page, and is not affiliated with LLM SkillHub.

boshi-xixixi / react19-source-patterns

Reference for React 19 source-file migration patterns, including API changes, ref handling, and context updates.

0
SKILL.md
1.9 KB

React 19 Source Migration Patterns

Reference for every source-file migration required for React 19.

Quick Reference Table

PatternActionReference
ReactDOM.render(...)→ createRoot().render()See references/api-migrations.md
ReactDOM.hydrate(...)→ hydrateRoot(...)See references/api-migrations.md
unmountComponentAtNode→ root.unmount()Inline fix
ReactDOM.findDOMNode→ direct refInline fix
forwardRef(...) wrapper→ ref as direct propSee references/api-migrations.md
Component.defaultProps = {}→ ES6 default paramsSee references/api-migrations.md
useRef() no arg→ useRef(null)Inline fix add null
Legacy Context→ createContext[→ api-migrations.md#legacy-context](references/api-migrations.md#legacy-context)
String refs this.refs.x→ createRef()[→ api-migrations.md#string-refs](references/api-migrations.md#string-refs)
import React from 'react' (unused)RemoveOnly if no React. usage in file

PropTypes Rule

Do not remove .propTypes assignments. The prop-types package still works as a standalone validator. React 19 only removes the built-in runtime checking from the React package the package itself remains valid.

Add this comment above any .propTypes block:

// NOTE: React 19 no longer runs propTypes validation at runtime.
// PropTypes kept for documentation and IDE tooling only.

Read the Reference

For full before/after code for each migration, read references/api-migrations.md. It contains the complete patterns including edge cases for forwardRef with useImperativeHandle, defaultProps null vs undefined behavior, and legacy context provider/consumer cross-file migrations.