Reactjs 如何在React中的userDetails数据之后调用Api
我有一个问题,在获得用户详细信息后如何调用API。 所以我有一个API,当用户重新加载页面时调用它的CallUserDetails API,我们可以从db中获取数据 所以,一旦从数据库中获取数据,我就需要根据userDetails调用其他API。 但是从auth.js调用userDetails api,如果userDetails调用其他api,我必须检查视图中的几个页面 获取用户详细信息后,是否有机会访问所有其他API 我尝试了许多解决方案,但都不起作用 我尝试将async和Wait放入componentdidmount中,但同样的问题也出现在错误userDetails null中 我加了这样的东西,Reactjs 如何在React中的userDetails数据之后调用Api,reactjs,api,react-native,react-redux,Reactjs,Api,React Native,React Redux,我有一个问题,在获得用户详细信息后如何调用API。 所以我有一个API,当用户重新加载页面时调用它的CallUserDetails API,我们可以从db中获取数据 所以,一旦从数据库中获取数据,我就需要根据userDetails调用其他API。 但是从auth.js调用userDetails api,如果userDetails调用其他api,我必须检查视图中的几个页面 获取用户详细信息后,是否有机会访问所有其他API 我尝试了许多解决方案,但都不起作用 我尝试将async和Wait放入comp
async componentDidMount(){if(this.props.userDetails!==null){…其他API..}
}
但这对我不起作用
谢谢检查componentDidUpdate中的userDetails道具是否已更改。因此,您不会每次组件更新时都调用api componentDidUpdate(prevState,prevProps){if(this.props.userDetails!==prevProps.userDetails){…其他API..}
}请在你的app.js中尝试以下代码
import React from 'react';
import './main.css';
import Modal from './components/Modal/modal';
class App extends React.Component {
state = {
showModal1: false,
showModal2: false
};
showModal = x => {
this.setState({
[x]: !this.state[x]
});
};
render() {
return (
<div>
<div className="button-container">
<button className="toggle-button" onClick={x => {
this.showModal(showModal1);
}}>Show yourself Modal 1!</button>
</div>
<div className="button-container">
<button className="toggle-button" onClick={x => {
this.showModal(showModal2);
}}>Show yourself Modal 2!</button>
</div>
<Modal onClose={this.showModal} show={this.state.show1} title="Test modal 1" id="1">Lorem ipsum</Modal>
<Modal onClose={this.showModal} show={this.state.show2} title="Test modal 2" id="2">I am a different modal</Modal>
</div>
);
}
}
export default App;
从“React”导入React;
导入“/main.css”;
从“./components/Modal/Modal”导入模态;
类应用程序扩展了React.Component{
状态={
showModal1:false,
showModal2:错误
};
showModal=x=>{
这是我的国家({
[x] :!this.state[x]
});
};
render(){
返回(
{
这是showModal(showModal1);
}}>展示你自己模态1!
{
这是showModal(showModal2);
}}>展示你自己模态2!
乱数假文
我是另一个模态
);
}
}
导出默认应用程序;
一种解决方案是让userDetails API返回一个承诺,然后在承诺得到解决时调用其他API。您能为问题添加相关代码吗?