Javascript 这是一个不工作的状态
我正在尝试设置状态,然后在设置后用当前状态调用另一个函数 我有这种代码Javascript 这是一个不工作的状态,javascript,reactjs,react-native,Javascript,Reactjs,React Native,我正在尝试设置状态,然后在设置后用当前状态调用另一个函数 我有这种代码 this.setState({ candidates : diCandi },()=>{ this.createDataSource(this.state) console.log("The state is=>",this.state); }); 我想用刚刚更新的状态调用this.createDataSource(this.state)。 它不起作用,我想知
this.setState({
candidates : diCandi
},()=>{
this.createDataSource(this.state)
console.log("The state is=>",this.state);
});
我想用刚刚更新的状态调用this.createDataSource(this.state)
。
它不起作用,我想知道为什么。我做错什么了吗
事实上,当我注销该州时。我从未在日志中看到代码。
类应用程序扩展了React.Component{
建造师(道具){
超级(道具)
this.state={candidates:“no candidates”}
}
shouldComponentUpdate(){
返回false;
}
按钮点击(e){
this.setState({candidates:“diCandi”},()=>console.log(“更新”))
}
render(){
返回(
确定候选人
{this.state.candidates}
)
}
}
const MOUNT_NODE=document.getElementById('容器')
ReactDOM.render(,MOUNT_节点)
类应用程序扩展了React.Component{
建造师(道具){
超级(道具)
this.state={candidates:“no candidates”}
}
shouldComponentUpdate(){
返回false;
}
按钮点击(e){
this.setState({candidates:“diCandi”},()=>console.log(“更新”))
}
render(){
返回(
确定候选人
{this.state.candidates}
)
}
}
const MOUNT_NODE=document.getElementById('容器')
ReactDOM.render(,MOUNT_节点)
您可以将所有状态发送到
createDataSource
您可以执行的操作
this.setState({
candidates : diCandi
},()=>{
this.createDataSource(this.state.candidates)
console.log("The state is=>",this.state.candidates);
});
另外,建议从createDataSource
方法访问状态,不要将其作为参数发送
this.setState({
candidates : diCandi
},()=>{
this.createDataSource()
console.log("The state is=>",this.state.candidates);
});
然后在createDataSource
createDataSource() {
this.state.candidates
.... rest of code
}
您可以将所有状态发送到
createDataSource
您可以执行的操作
this.setState({
candidates : diCandi
},()=>{
this.createDataSource(this.state.candidates)
console.log("The state is=>",this.state.candidates);
});
另外,建议从createDataSource
方法访问状态,不要将其作为参数发送
this.setState({
candidates : diCandi
},()=>{
this.createDataSource()
console.log("The state is=>",this.state.candidates);
});
然后在createDataSource
createDataSource() {
this.state.candidates
.... rest of code
}
不工作是不够的信息。请为你的问题提供更多的背景。如果您遇到任何错误或异常行为,请将其添加到您的问题中。这样应该可以工作,回调的要点是在状态更新之前不会触发它(因为这可能是异步的)。请使用堆栈代码段(
[]
工具栏按钮)使用可运行的示例更新您的问题。堆栈代码段支持React,包括JSX。澄清什么是不起作用
。您可以尝试从createDataSource
中登录,查看状态是否为新状态(应该是新状态)。所以你需要找出什么是不起作用的。不起作用的信息是不够的。请为你的问题提供更多的背景。如果您遇到任何错误或异常行为,请将其添加到您的问题中。这样应该可以工作,回调的要点是在状态更新之前不会触发它(因为这可能是异步的)。请使用堆栈代码段([]
工具栏按钮)使用可运行的示例更新您的问题。堆栈代码段支持React,包括JSX。澄清什么是不起作用
。您可以尝试从createDataSource
中登录,查看状态是否为新状态(应该是新状态)。所以你需要找出什么是不起作用的。