2016-05-19 6 views
1

Я просто подбираю om.next и столкнулся с ситуацией, когда у меня есть некоторые входы формы, реализованные как компоненты, которые удерживаются в локальном состоянии, например. состояние проверки, фактическое входное значение и т. д. - это состояние обновляется и получает доступ через om.next/update-state! и om.next/get-state. Проблема с этим, похоже, заключается в том, что я обертываю входные данные в форме в родительском компоненте. Я не уверен, как получить состояние, поддерживаемое компонентами ввода. Лучше ли передавать по родительскому компоненту свойство входного компонента? Как насчет ситуаций, когда нет родительского компонента?Доступ к состоянию подкомпонента om.next

ответ

2

Мне кажется, что есть 2 варианта для случая использования вы хотите достичь:

  1. передать родительский компонент в качестве аргумента, как вы сказали
  2. есть запись в глобальном приложении государство который представляет собой отредактированную текущую форму, которую вы можете обновить с помощью transact! независимо от компонента, соответствующего входу. Таким образом, каждый компонент, представляющий вход, знает, где в состоянии приложения обновить себя (какой ключ в текущей форме), вероятно, захвачен сукцинивно в одной функции мутации.

1), вероятно, самый простой в реализации данного кода, который у вас есть в настоящее время, но мне всегда нравится идти на 2), потому что он не отклоняется от мнения «единого источника истины» о том, что Om Next рекомендует (и пытается обеспечить соблюдение). Данные формы - это фактически бизнес-данные, которые могут быть нежелательны для разброса компонентов. Испытываемость - это только одно преимущество, которое я сразу вижу из такого подхода.