Что такое «разрывая» в контексте React-Redux? - PullRequest
0 голосов
/ 26 февраля 2019

Версия 6.0 React-Redux упоминает:

В версии 6 все компоненты считывают одно и то же текущее значение состояния хранилища из контекста, что означаетдерево будет последовательным и не будет «разрывать».

Я понимаю, что это полезно, но я бы хотел лучше понять значение «разрывания» в этом контексте, и я бы хотелМне нравится понимать, как новый подход, который они описывают, на самом деле уменьшает «разрыв», если кто-то может уточнить.

1 Ответ

0 голосов
/ 26 февраля 2019

Я - сопровождающий Redux, и я написал этот абзац.

Это особая проблема, поднятая Эндрю Кларком из команды React как потенциальная проблема с внешними инструментами управления состоянием при использовании сПредстоящий React «Параллельный режим».

В Параллельном режиме React сможет приостановить прохождение рендеринга через дерево и позже возобновить расчет остальной части дерева.

Если компоненты вдерево считывает внешнее значение, и это значение должно было измениться, пока рендеринг React приостановлен, тогда некоторые из верхних компонентов дерева могли бы отображаться с использованием внешнего значения 1, а некоторые из более поздних компонентов могли бы отображаться с использованием внешнего значения 2Это может привести к несогласованным выводам рендеринга, потому что разные части дерева определяют свое поведение на основе разных значений в одном и том же проходе рендеринга.Это «разрыв».

Отчасти идея использования createContext для v6 заключалась в том, что, поскольку React гарантирует, что данный проход рендеринга использует одинаковое значение контекста везде, вероятность разрыва не будет.

Реализация v6 работает, но в некоторых случаях она не так эффективна, как мы надеялись.В настоящее время мы работаем над созданием другой внутренней реализации, которая возвращается к использованию прямых подписок вместо .Это потенциально означает, что разрыв снова возможен, но на этом этапе нам нужно откинуться на спинку кресла и подождать, пока команда React завершит сборку параллельного режима, прежде чем мы сможем потратить время на то, чтобы увидеть, в чем на самом деле проблемы.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...