также, как простые маленькие компоненты?
это нужный паттерн и они хорошо зарекомендовали себя, однако в вуе его применение сильно ограничено из-за того что реактивность на данных быстро убивает производительность при получении данных высоко в дереве, т.к. в вуе каждый компонент использующий реактивные данные является их наблюдателем - это приводит к тому что если мы имеем хоть какой-то стейт в рутовой ноде, либо прокидываем реактивные пропсы в нижележащие компоненты, то мы сами того не подозревая вызываем механизм vdom для всего поддерева, от узла в котором мы получили эти данные.
если сравнивать с тем же mobx, такой проблемы не возникает, т.к. мы отслеживаем доступ к полям, а не изменение данных в реактивных обьектах и мы явно указываем на то какой компонент является наблюдателем
ситуация усугубляется если в большом дереве между композитным компонентом и его "листом" есть скажем попап с сайд эфектами, в этом случае мы можем увидеть мерцание попапа, что совершенно не допустимо
Обсуждают сегодня