setState中传值问题

#1
    handleChange(event){
        let name,obj;
        name=event.target.name;
        this.setState(
            (obj={},
            obj[""+name]=event.target.value,
            obj)  //看不懂这里,有大神,能解释下语法吗,跪谢
        )
    }

一般来说setState里面不是传{}吗,为啥这里使用()
这段代码是为了实现输入数据跟新state

//state中的内容
 this.state={
            date:"",
            title:"",
            amount:""
        }

<input type="text" className="form-control"  onChange={this.handleChange.bind(this)} placeholder="Date" name="date" value={this.state.date} />
<input type="text" className="form-control" onChange={this.handleChange.bind(this)}  placeholder="Title" name="title"  value={this.state.title}/>


#2

括号里面是个对象, 你单独拿出来执行一下.

1 Like
#3

1 Like
#4

括号里面是一个运算,第三个参数就是最终返回的obj对象{},和下面等价:

1 Like