我正在尝试在React中制作计算器,但此时我已经陷入困境。我不知道如何设置值前一个num和下一个num和operator。
这是我的状态代码
this.state={
value:'0',
operation:'',
previousvalue:'',
nextvalue:''
}
这是我的功能代码,我正在尝试管理我的所有计算:
operation(operator) {
console.log('operator coming',operator);
// this.setState({ans:this.state.value,operator,this.state.value})
const previousvalue=this.state.value;
const nextValue='';
const result='';
console.log('this is my previous value',previousvalue);
if(operator) {
this.setState({value:'',operation:operator,result:previousvalue+this.state.value})
console.log('this is my opertor',this.state.operation,result);
}
答案 0 :(得分:0)
您正在使用" this.state.value"在setState({})内。
您的意思是:this.setState({ans: this.state.value, operator: this.state.value})
或者您的意思是:this.setState({ans: this.state.value, operator, value})
。
答案 1 :(得分:0)
This.setState是异步函数试试这个this.setState({value},()=> {console.log})
SetState在其参数中接受回调函数。
第二件事也尝试发布错误。