-
Notifications
You must be signed in to change notification settings - Fork 14
Open
Description
Проблема
Если полазить по разным страницам с включенным keepAlive, то в какой-то момент стреляет ошибка Possible memory leak из eventemitter, связано с тем, что мы подписываемся в каждом компоненте на изменение темы для синхронизации модификатора.
Происходит подписка здесь
Client/src/components/super/i-block/state/index.ts
Lines 645 to 646 in c239c64
| this.sync.mod('theme', 'remoteState.theme.emitter:theme.change', {immediate: true}, (theme?: Theme) => | |
| (theme ?? this.remoteState.theme.get()).value); |
Тут нужно уточнить у @kobezzza, по какой причине мы не могли отказать от слушателя, Артем говорил, что подобный вопрос уже поднимался.
Возможные решения
- Использовать глобальный селектор на теге html, для определения текущей темы. Если есть необходимость в модификаторе на отдельном компоненте, то добавить возможность точечной синхронизации темы с локальным модификатор компонента.
- Использовать sharedMods?
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
No labels