В Rails, у меня есть набор вкладок Bootstrap на странице с React компонентом на каждом из них, то есть:Реагировать компонент Rails: вручную вызывая повторное визуализации
<div id="tab-1" class="tab-pane">
...
<%= react_component('PeopleWidget', person_id: @person.id) %>
...
</div>
<div id="tab-2" class="tab-pane">
...
<%= react_component('ContentWidget', content_id: @content.id) %>
...
</div>
Компоненты:
- не разговаривайте друг с другом
- Обновление RESTful бэкенд
Сейчас:
PeopleWidget
может обновить права человека во внутреннем интерфейсе- Это должно изменить
ContentWidget
только для чтения поведение на
Мой тактическое решение:
- На Bootstrap случае, когда
tab-2
показано , Я хотел бы вручную запустить рендерингContentWidget
. - Это будет инициировать загрузки обновленных деталей из бэкэндом
ContentWidget
будет правильное поведение обновленного
Это чувствует, как обходной путь, но у меня есть график :)
Я не могу понять, как для ручного запуска ContentWidget
для повторной обработки. Это возможно?
, если изменяется состояние компонента, она будет засавить. LIk вызов 'setState', например. Или предоставляются новые значения свойств. Однако я бы не ожидал, что рендер начнет загружать данные. Вы не должны полагаться на 'render' для триггера. Его можно было бы назвать слишком часто (или недостаточно). – WiredPrairie