Javascript 如何使用React添加帖子?

Javascript 如何使用React添加帖子?,javascript,html,reactjs,Javascript,Html,Reactjs,我正在开发一个向表格中添加帖子的应用程序。我下面的代码不起作用。这给了我一个错误: 未捕获的TypeError:无法为读取null(…)的属性“props” 函数handleddnew() 从“React”导入React; 类应用程序扩展了React.Component{ 建造师(道具){ 超级(道具); 此.state={ 编号:'1', 姓名:'gogo', 标题:“”, 意见:"10",, 喜欢:'22', 日期:'1.1.1111' }; } 地址(标题){ this.state.tit

我正在开发一个向表格中添加帖子的应用程序。我下面的代码不起作用。这给了我一个错误:

未捕获的TypeError:无法为读取null(…)的属性“props” 函数handleddnew()

从“React”导入React;
类应用程序扩展了React.Component{
建造师(道具){
超级(道具);
此.state={
编号:'1',
姓名:'gogo',
标题:“”,
意见:"10",,
喜欢:'22',
日期:'1.1.1111'
};
}
地址(标题){
this.state.title.push(title);
这是我的国家({
帖子:this.state.title
});
}
render(){
返回(
);
}
}
类AddPost扩展了React.Component{
建造师(道具){
超级(道具);
此.state={
新帖子:“”
}
this.updateNewPost=this.updateNewPost.bind(this);
}
updateNewPost(e){
this.setState({newPost:e.target.value});
}
handleAddNew(){
this.props.addNew(this.state.newPost);
this.setState({newPost:'});
}
render(){
返回(
添加帖子
);
}
}
类Thead扩展了React.Component{
render(){
返回(
身份证件
用户名
职称
意见
喜欢
创建于
);
}
}
类行扩展了React.Component{
render(){
返回(
{this.props.number}
{this.props.name}
{this.props.title}
{this.props.views}
{this.props.likes}
{this.props.date}
);
}
}
导出默认应用程序;

您没有将
handleAddNew
绑定到
您需要添加

this.handleAddNew=this.handleAddNew.bind(this)

在构造函数中

如果您使用的是babel,并且有
stage-2
插件,您可以将实例方法更改为箭头函数,如下所示:

handleAddNew = () => {    
  // do stuff
}

而不必在构造函数中绑定它。第一种方法是开箱即用的,但是如果你使用的是巴贝尔,那么第二种方法肯定会更干净

您忘记将
handleAddNew
绑定到
,方法与您对
此.updateNewPost所做的相同

谢谢,当我添加绑定时,它正在工作。但还有一个问题,未捕获的TypeError:无法读取未定义(…)的属性“title”。它不读这个.state.title.push(title);我认为它会把价值推到这个。状态。标题。原因有二。1.push()方法将元素添加到数组的末尾
this.state.title
是一个字符串。2.若要更改状态,请执行下面的一行操作:
this.setState({title:this.state.title})
或者,因为它们有相同的名称,所以可以做得更短:
this.setState({title})。您可以将两者结合使用:
this.setState({title,post:this.state.title})确定。我知道了:this.addPost=this.addPost.bind(this);}addPost(title){this.setState({title});}谢谢!:)
handleAddNew = () => {    
  // do stuff
}