我有2个组成部分:
在信息中心中,componentDidMount中有一个API调用。 在“帖子”组件中,收到帖子后,我导航至“仪表板”。是否可以检测应用是否已从“帖子”导航到仪表板并删除componentDidMount中的API调用。
检查以下代码:
// Dashboard.js
componentDidMount() {
this.handleApiCall(); // default axios get request
// Here I need to detect if the user was navigated to Dashboard from Posts or other component
}
// Posts.js
handleNavigation = () => {
this.setState({
isOpen: false,
});
this.props.navigation.navigate('Dashboard');
};
谢谢!
答案 0 :(得分:2)
尝试从Posts.js
传递参数
// Dashboard.js
componentDidMount() {
const { navigation } = this.props;
const fromPosts = navigation.getParam('fromPosts', false);
if(!fromPosts) {
this.handleApiCall(); // default axios get request
}
}
// Posts.js
handleNavigation = () => {
this.setState({
isOpen: false,
});
this.props.navigation.navigate('Dashboard', {fromPosts: true});
};