我有一个在少数地方使用的函数,如果没有使用这些数据进行自举,则会有条件地修复组件数据。
getMissingData() {
axios.get(endpointWithMissingData(), { withCredentials: true })
.then((res) => {
if (res.status === 200) {
this.setState({ dataNeeded: res.data.data, loading: false })
} else if (this.state.tryCount >= 3) {
this.setState({ loading: false, isError: true })
} else {
this.setState((prevState) => {
return { tryCount: prevState.tryCount + 1 }
})
setTimeout(this.getMissingData.bind(this), 5000)
}
})
.catch((err) => {
this.setState({ loading: false, isError: true })
})
}
最重要的是什么" React"在多个组件之间共享此功能的方法?我计划将它放在一个实用程序文件中并将其导出到这些不同的组件。
它们不在应用程序的相同父组件或区域之下,因此从父组件向下冒泡这些数据是没有意义的;如果我们可以但仍需要处理这种情况,我们也会尝试推迟此调用。