2015-08-28 17 views
0

Я работаю над приложением React, и я столкнулся с проблемой. Я пытаюсь передать данные с обзорной страницы (/) на другой вид, ShowAllView (/#/showall).Неустранимые компоненты React прослушивают действия?

Я сделал Action, который передает данные из обзора. Класс ShowAllView прослушивает это Action. Однако, похоже, что он не запускается в классе ShowAllView. Если я попытаюсь прослушивать действие в компоненте в обзоре, он отлично работает.

Класс ShowAllView не выполнял свой метод render() во время Action.

Я использую React with Reflux.

Кто-нибудь знает решение для передачи данных с одного вида на другое? Или как незаслуженный компонент должен слушать Action?

EDIT

overview.jsx:

//some method 
Actions.selectTab(selectedTab); 

showall.jsx

mixins:[ 
Reflux.listenTo(Actions.selectTab, "setSelectedTab") 
] 
//...some more code 

Может быть, это помогает немного:

var Routes = (
    <Route handler={App} path='/'> 
     <DefaultRoute handler={OverView} /> 
     <Route name='showall' handler={ShowAllView}></Route> 
    </Route> 
); 
+0

Нам нужно больше кода для udnerstand, что вы на самом деле имеете в виду –

+0

Почему вы не слушаете изменения в своем магазине в другом компоненте, а не в действии? –

ответ

0

Для представления состояния, которое должно быть известно разными страницами/компонентами, я использую App.Store. Приложение Store прослушивает действия, задает свойства, затем запускает событие, которое подхвачено компонентом верхнего уровня прослушивания, который устанавливает состояние, которое распространяется через реквизиты для отображения в компонентах. Это круговая вещь, которая работает, чтобы держать вашу логику ясной.

Смежные вопросы