Как обрабатывать фоновые обновления и ввод формы в React?

#javascript #reactjs #typescript #react-native

Вопрос:

Я пытаюсь выяснить, как настроить контексты для обработки фоновых обновлений, а также для обработки ввода в форму. Вот что я сделал, но я знаю, что это неправильно, потому что у меня проблема, из-за которой форма передается повторно, а данные исчезают

 <BackendDataContextProvider>
  <Stack.Navigator>
    <Stack.Screen name="list" component="ListDataFromBackendComponent">
    <Stack.Screen name="update" component="UpdateEntryComponent">
  </Stack.Navigator>
</BackendDataContextProvider>
 

У BackendDataContextProvider него есть вызываемое состояние dataFromBackend , которое устанавливается каждые 60 секунд.

UpdateEntryComponent не полагается на dataFromBackend информацию, но из-за иерархии она все еще повторяется.

Я думаю, что мне нужно изменить BackendDataContextProvider , чтобы разделить его на фоновый сборщик и другой компонент, который используется в ListDataFromBackendComponent

Однако существует ли менее «радикальный» подход, который я, возможно, упускаю?

Ответ №1:

Вы пробовали React.memo (компоненты класса) или useMemo (функциональные компоненты)? Они используются для предотвращения повторных отправок дочерних сообщений, которые вызваны исключительно тем, что родитель выполняет повторную отправку.

Комментарии:

1. На самом деле я так и сделал, но, возможно, я делал это неправильно, так как он все еще перенаправляет компонент.