mirror of
https://github.com/facebook/react.git
synced 2025-11-01 09:12:30 +00:00
d1e044b81ab311b74427ebc58fc541a53bc3c711
--- Try to fix bug from #1589: > If a declaration for an immutable identifier (i.e. one that is not later re-assigned, since undefined is a primitive) is sandwiched between mutations, we currently do not record it as an output or hoist it out of the reactive scope. One simple fix is to add all declared (and later referenced) identifiers as declarations of a reactive scope. This has some undesired effects (e.g. additional instructions + memo cache slots), but in practice, this shouldn't be happening often. Alternatively, we could 1.) add a pass to hoist declarations, 2.) account for this in constant propagation, or 3.) add a bailout
Languages
JavaScript
67.1%
TypeScript
29.4%
HTML
1.5%
CSS
1.1%
C++
0.6%
Other
0.2%