Javascript 如何在setState回调中获取更新状态?
我有一个代码场景,需要在setState回调中获取更新的状态。如下图所示:Javascript 如何在setState回调中获取更新状态?,javascript,reactjs,react-native,Javascript,Reactjs,React Native,我有一个代码场景,需要在setState回调中获取更新的状态。如下图所示: this.setState({name : "xyz"}, () => { //I want the updated state here where I need to get the this.state.name should be "xyz" }) 使用componentDidUpdate()获取更新的状态和道具值 componentDidUpdate(prevProps, prevState
this.setState({name : "xyz"}, () => {
//I want the updated state here where I need to get the this.state.name should be "xyz"
})
使用componentDidUpdate()获取更新的状态和道具值
componentDidUpdate(prevProps, prevState) {
console.log(this.state, prevState);
}
使用componentDidUpdate()获取更新的状态和道具值
componentDidUpdate(prevProps, prevState) {
console.log(this.state, prevState);
}
设置状态后获取更新状态的步骤与上述步骤相同
this.setState({name : "xyz"}, () => {
console.log(this.state.name)
});
我问了这个问题,因为我的函数中有一些问题,无法获取更新的状态。设置状态后获取更新的状态与问题中描述的相同
this.setState({name : "xyz"}, () => {
console.log(this.state.name)
});
我问了这个问题,因为我的函数中有一些问题,无法获取更新的状态。是的,这就是回调的用途。您在访问那里的
this.state.name
时遇到问题吗?那么问题出在哪里?您没有在那里获得更新状态吗?如果您在回调中使用this.state
,它应该是更新状态:您可以在回调中访问更新状态,也可以在componentDidUpdate中访问更新状态lifecycle@Agney它起作用了,我有一些东西改变了这个的参考。是的,这就是回调的用途。您在访问那里的this.state.name
时遇到问题吗?那么问题出在哪里?您没有在那里获得更新状态吗?如果您在回调中使用this.state
,它应该是更新状态:您可以在回调中访问更新状态,也可以在componentDidUpdate中访问更新状态lifecycle@Agney它起作用了,我有一些东西改变了this.stateHi@abhijit的引用问题是如何在回调中获取更新状态。@ShashankMalviya正确,通常您应该在回调方法中获取更新状态。但是您在前面的评论中同意了我有一些东西改变了this.state–
的引用,并且从您给定的代码片段中还不清楚这个问题。因此,为了解决您的问题,我建议使用componentDidUpdate()。Hi@abhijit问题是如何在回调中获取更新状态。@ShashankMalviya正确,通常您应该在回调方法中获取更新状态。但是您在前面的评论中同意了我有一些东西改变了this.state–
的引用,并且从您给定的代码片段中还不清楚这个问题。因此,为了解决您的问题,我建议使用componentDidUpdate()。