модуль 3 из 5 · Акт VII · ~30 мин · 7 решений
сцена
Тикет «Зоны независимы. Слишком» собирает у доски всех лидов. Симптом простой: трейдер выбрал регион «Юг» в шапке — раздел прогнозов открылся со «Всей страной». Регион жил в общем сторе; стора больше нет; каждый теперь сам по себе.
Команда прогнозов уже предложила решение — угадайте какое. «Давайте сделаем общий npm-пакет с состоянием, все зоны его подключат». Общий стор, вид сбоку. Я его два месяца хоронила — он восстаёт.
Ну а что такого? У бэкенда общие данные — через журнал событий, и все довольны. Сделаем шину событий в браузере: зона рядов кричит «регион изменился», остальные слушают.
Или проще: регион в localStorage, все читают. Пять минут работы.
Стоп. Слышу три предложения, и все три — «как передать данные». А вопрос надо задавать другой — тот же, что в первом акте: кто хозяин этого знания и по какому контракту его отдаёт. «Выбранный регион» — это чьё? Где оно живёт? Кто узнаёт об изменении и как?
(медленно) Регион — это... не наше и не их. Это часть запроса пользователя к терминалу. Как поисковая строка.
Вот. А у запроса к терминалу уже есть дом, контракт и даже кнопка «поделиться». Он называется адресной строкой.