gpt4 book ai didi

javascript - 组件上的异步等待已挂载

转载 作者:数据小太阳 更新时间:2023-10-29 06:09:39 25 4
gpt4 key购买 nike

这是我的 componentDidMount 方法。我想设置当前用户的状态,然后在设置该用户时调用该函数。我该怎么做?

  componentDidMount = () => {
firebase.auth().onAuthStateChanged((user) => {
if (user) {
this.setState({user: user})
}
});
this.props.retrieveMatches(this.state.user.uid)
}

我试过使用 async/await 但我在这里没有正确使用它:

  async componentDidMount = () => {
await firebase.auth().onAuthStateChanged((user) => {
if (user) {
this.setState({user: user})
}
});
this.props.retrieveMatches(this.state.user.uid)
}

基本上我想在第 7 行调用 props 函数之前等待第 2-6 行

最佳答案

你需要使用.setState()的回调函数:

componentDidMount = () => {
firebase.auth().onAuthStateChanged((user) => {
if (user) {
this.setState({user: user}, () => {
this.props.retrieveMatches(this.state.user.uid);
})
}
});
}

问候

关于javascript - 组件上的异步等待已挂载,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48503579/

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