大家好,我在这里看不到我的错误,希望有人可以... 这是我的提取数据类:
export default class Auftrag extends Component {
state = {
auftraege: "Test",
};
getAuftraege = () => {
axios.get("Auftraege/auftraege").then(e => {
this.setState({
auftraege: e.data,
});
console.log(e.data);
});
};
componentDidMount() {
this.getAuftraege();
}
render() {
return (
<>
<AuftragDisplay test={this.state.auftraege} ></AuftragDisplay>
</>
);
}
}
这是我在Display类中的构造函数:
constructor(props) {
super(props);
console.log(props);
}
axios请求被触发,我在控制台中获得了正确的数据。但这并没有传递给我的组件。 希望有人知道怎么了并能帮助我
已解决: 谢谢,我尝试了一下,可以解决问题。我得到了传递的数据,但是在更新之前调用了console.log(),所以我得到了旧数据。再次THX
答案 0 :(得分:0)
您的代码看起来不错。您可以在下面以不同的api为例查看相同的代码
class Auftrag extends Component {
state = {
auftraege: "Test",
};
getAuftraege = () => {
axios
.get("https://jsonplaceholder.typicode.com/posts/1")
.then(e => this.setState({auftraege: e.data}))
};
componentDidMount() {
this.getAuftraege();
}
render() {
return (
<>
<AuftragDisplay test={this.state.auftraege} ></AuftragDisplay>
</>
);
}
}
const AuftragDisplay = ({test}) =><h2>Hi--->{test.title}</h2>
答案 1 :(得分:-1)
只需将状态放入Auftrag类的构造函数中,我就应该工作。