На счет store.user.age = 5 - разработчики сами должны решать, работать ли напрямую с proxy-объектом store.$ или использовать систему подписок.
Я ни раз писал о типобезопасных строках в этой статье , в оф. документации все расписано @qtpy/state-management-observable . если вы опечатаетесь store.update('user.agesdfsdfs', 5) вам выдаст ошибку
Да я с вами полностью солидарен однозначно что сигналы это очень хороший инструмент и удобный , и на счет громких слов. Но не все его могут использовать или интегрировать без последствий. Некоторые разработчики — включая команду React — считают, что сигналы нарушают базовые принципы реактивной архитектуры, особенно при конкурентном рендеринге. Есть опасения, что они ломают однонаправленный поток данных, напоминают старые решения вроде KnockoutJS и могут усложнить масштабирование крупных приложений. Поэтому, несмотря на свою эффективность, сигналы подходят далеко не всем — особенно в проектах с высокими требованиями к стабильности и предсказуемости.
Я показывал несколько вариантов и специально сделал так чтобы у разработчиков был выбор чтобы каждый мог использовать ту парадигму обновления состояния, которая ближе к их архитектурным предпочтениям или привычкам команды — будь то прямые мутации через proxy, более декларативные обновления через строковые пути с поддержкой typescript, или гибкие селекторы, обеспечивающие точечный контроль.
Вы можете свойствами на прямую взаимодействовать через proxy store.$.user.age = 5 или через систему подписок при помощи строковых путей store.update('user.age', 5) или же при помощи селекторов как в простонародье называется sotre.update(() => store.$.user.age, 4) или store.update((t) => store.$.items[t(index)] , 2)
спасибо большое за оценку - добавил изменения в селекторе , уже запушил и документации подправил, сейчас эту статью изменю:
и в правду так лучше стало , а то "store" может иметь любое название , и тогда из-за длинного название плохая будет читабельность.
На счет
store.user.age = 5
- разработчики сами должны решать, работать ли напрямую с proxy-объектомstore.$
или использовать систему подписок.Я ни раз писал о типобезопасных строках в этой статье , в оф. документации все расписано
@qtpy/state-management-observable
.если вы опечатаетесь
store.update('user.agesdfsdfs', 5)
вам выдаст ошибку.
Да я с вами полностью солидарен однозначно что сигналы это очень хороший инструмент и удобный , и на счет громких слов. Но не все его могут использовать или интегрировать без последствий. Некоторые разработчики — включая команду React — считают, что сигналы нарушают базовые принципы реактивной архитектуры, особенно при конкурентном рендеринге. Есть опасения, что они ломают однонаправленный поток данных, напоминают старые решения вроде KnockoutJS и могут усложнить масштабирование крупных приложений. Поэтому, несмотря на свою эффективность, сигналы подходят далеко не всем — особенно в проектах с высокими требованиями к стабильности и предсказуемости.
Я показывал несколько вариантов и специально сделал так чтобы у разработчиков был выбор чтобы каждый мог использовать ту парадигму обновления состояния, которая ближе к их архитектурным предпочтениям или привычкам команды — будь то прямые мутации через proxy, более декларативные обновления через строковые пути с поддержкой typescript, или гибкие селекторы, обеспечивающие точечный контроль.
Вы можете свойствами на прямую взаимодействовать через proxy
store.$.user.age = 5
или через систему подписок при помощи строковых путейstore.update('user.age', 5)
или же при помощи селекторов как в простонародье называетсяsotre.update(() => store.$.user.age, 4)
илиstore.update((t) => store.$.items[t(index)] , 2)