3. 3
Пожалуйста, нет, не надо!
Хватит условий!
Новая задача: загружать рекламу в просмотрщик, если:
— просмотрщик открыт,
— выбранное изображение является рекламным,
— пришли соотв. данные,
— это первая страница выдачи,
— перешли с главной страницы,
— в этой сессии этот блок еще не показывали,
— это эксперимент.
Куча
внеш
них
условий
Куча
внеш
них
услови
Куча
внеш
них
у
4. Собравшись с силами, мы погружаемся в код
4
findBlockOutside
innerBlock.hasMod
i-global
afterCurrentEvent
setTimeout
10. Итоги
Единое хранилище состояния приложения позволяет отказаться
от многих связей между блоками
Вообще хорошо, когда нет внешних связей (findBlockOutside)
Неглубокий call stack = понятный код
React не очень-то и нужен. Изменять DOM можно самим точечно.
(потенционально) Проще писать unit-тесты: достаточно выставить
желаемое состояние и проследить за ожидаемой реакцией.
10