Я читаю информацию о документе из Firebase и показываю ее в форме. Форма состоит из 3 детских форм. Прямо сейчас я загружаю информацию о документе в состоянии формы (компонента), а затем передаю ее дочерним элементам, например:
{this.state.activeTabIndex == 0 && (
<InformationForm
navigation={this.props.navigation}
property={this.state}
showSaving={this.showSaving}
/>
)}
Но поскольку происходит задержка переноса информации из Firebase, состояние передается пустым в дети. Когда состояние обновляется, мне нужно обновить состояние детей.
Я обнаружил, что могу сделать трюк с сочетанием «getDerivedStateFromProps» и «componentDidUpdate», но, поскольку у документа много свойств, он будет слишком медленным чтобы сравнить, какое поле изменилось для запуска обновления состояния или нет.
На данный момент я добавил состояние "isReady", которое устанавливается в значение true, когда информация из документа загружается в состояние, но я думаю, что это Должны быть лучшие способы справиться с этим.
{this.state.activeTabIndex == 0 && this.state.isReady == true && (
<InformationForm
navigation={this.props.navigation}
property={this.state}
showSaving={this.showSaving}
/>
)}
Есть предложения?