Change detection OnPush | Default вместе с Signals v16 и v17
В Angular 16 появились сигналы, которые напоминают Subjects из RxJS. Все операции, которые можно выполнить с помощью сигналов, можно выполнить и с помощью Subjects.
Как я понял основное отличие заключается в том, что сигналы требуют меньше кода, и Angular автоматически отписывается от них, если они не используются + как упоминалось в видео от разработчиков Angular, они добавили новый механизм обнаружения изменений.
Мне не совсем понятно, как это работает с сигналами. Я понял, что сигналы информируют, где были внесены изменения, и Angular проверяет только один компонент вместо всего дерева компонентов. Однако я немного запутался, так как прочитал много статей, одни говорят что это так работает только в 17 версии а некоторые говорят про 16.
Был бы очень благодарен, если бы кто-то объяснил, как работают сигналы с стратегиями обнаружения изменений default и onPush в Angular 16, а также как они будут работать в 17 версии с этими стратегиями.