gpt4 book ai didi

javascript - reactjs 中的 this.state.todolist.push() 返回一个数字?

转载 作者:行者123 更新时间:2023-11-30 00:27:47 25 4
gpt4 key购买 nike

当我在reactjs中使用this.state.todolist.push()时,它返回一个数字?但是用 concat 替换 push 会返回正确的值。

var ToDosBox = React.createClass({
getInitialState:function(){
return {
taskList:[]
}
},
addCallback:function(e,value){
var tasks = this.state.taskList.push({taskName:value,author:'test',time:'10:15'});
//console.log(tasks);
this.setState({taskList:tasks});
},
render:function(){
return (
<div className="todos-box">
<InputBox ref="inputBox" callback={this.addCallback} />
<h3>Todo List</h3>
<ToDosList items={this.state.taskList} />
</div>
)
}
})

最佳答案

是因为.push

returns the new length property of the object upon which the method was called.

你不需要变量tasks,你可以传递给setState方法this.state.taskList,像这样

addCallback: function (e, value) {
this.state.taskList.push({
taskName: value, author: 'test', time: '10:15'
});

this.setState({taskList: this.state.taskList});
}

Example

关于javascript - reactjs 中的 this.state.todolist.push() 返回一个数字?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30794985/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com