reactjs / reactjs/react.dev

Documentation should state that React preserves setState callback this context

Open
#492 0 comments 6 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
JavaScript
Stars
11.8k
Forks
7.9k
Avg merge
1d 11h
Merged PRs (30d)
11

Description

I just recently found out that setState's callback calls with the correct this context per this line in the React source. Nowhere in the documentation is it stated that React internally calls callbacks with context. This should be made clear as many assume it doesn't, leading to unnecessary measures such as arrow functions, explicit binding, etc.

The lack of explicit documentation also creates confusion with other things that do require binding, such as traditional class methods used as event handlers.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start with the linked ReactFiberUpdateQueue.js line and review the existing setState callback documentation. Done means the documentation explicitly states that the callback receives the correct this context and distinguishes this from class methods used as event handlers.

Written by the indexing model from the issue text.

Assessment

Tech stack
javascript, react
Domain
documentation
Issue type
Documentation
Difficulty
2/5
Estimated time
1-3 hours
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
50/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.