gpt4 book ai didi

reactjs - React Native 在打开时刷新一个组件

转载 作者:行者123 更新时间:2023-12-02 17:05:42 26 4
gpt4 key购买 nike

我有我的堆栈导航器 -

export const Routes = StackNavigator({
Login: {
screen: Login,
},
Flights: {
screen: Flights,
},
Payment: {
screen: Payment,
}
}, {
initialRouteName: 'Login'
}
)

流程是登录 -> 航类 -> 付款。

“航类”屏幕调用 API 来获取航类。我有在 componentDidMount() 中调用航类的逻辑。但是,当我从付款返回到航类时,我想再次调用 API。

我的问题是如何在每次打开航类屏幕时创建此 API 调用逻辑?

最佳答案

除了在 componentDidMount 中获取数据之外,您还可以为 didFocus event 创建一个监听器。 .

示例

class Flights extends React.Component {
state = { flights: [] };

componentDidMount() {
this.getFlights();

this.listener = this.props.navigation.addListener("didFocus", this.getFlights);
}

componentWillUnmount() {
this.listener.remove();
}

getFlights = () => {
getData().then(flights => {
this.setState({ flights });
});
};

render() {
// ...
}
}

关于reactjs - React Native 在打开时刷新一个组件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51827138/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com