Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/455.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript Can';t输入InputType';文本';反应_Javascript_Node.js_Reactjs_Redux - Fatal编程技术网

Javascript Can';t输入InputType';文本';反应

Javascript Can';t输入InputType';文本';反应,javascript,node.js,reactjs,redux,Javascript,Node.js,Reactjs,Redux,我正在使用NodeJS 这是我的coursePage.js中的组件。问题是,当我运行它时,我不能输入我的InputType,尽管我看不到代码中有任何错误(控制台也没有显示任何内容) import React,{PropTypes}来自'React'; 从'react redux'导入{connect}; 从“../../actions/courseActions”导入*作为courseActions; 类coursesPage扩展了React.Component{ 构造函数(道具、上下文){ 超

我正在使用NodeJS

这是我的coursePage.js中的组件。问题是,当我运行它时,我不能输入我的InputType,尽管我看不到代码中有任何错误(控制台也没有显示任何内容)

import React,{PropTypes}来自'React';
从'react redux'导入{connect};
从“../../actions/courseActions”导入*作为courseActions;
类coursesPage扩展了React.Component{
构造函数(道具、上下文){
超级(道具、背景);
此.state={
课程:{标题:}
};
this.onTitleChange=this.onTitleChange.bind(this);
this.onClickSave=this.onClickSave.bind(this);
}
onTitleChange(事件){
const course=this.state.course;
course.title=event.target.value;
this.setState=({course:course});
}
onClickSave(){
this.props.dispatch(courseActions.createCourse(this.state.course));
}
courseRow(课程、索引){
返回{course.title};
}
render(){
返回(
课程
{this.props.courses.map(this.courseRow)}
添加课程
);
}
}
coursesPage.propTypes={
调度:需要PropTypes.func.isRequired,
课程:PropTypes.array.isRequired
};
函数mapStateToProps(状态,ownProps){
返回{
课程:国家课程
};
}
导出默认连接(MapStateTops)(coursesPage);

问题是,您以错误的方式更新了
状态
值,请尝试以下操作:

const course = this.state.course;
course.title = event.target.value;
this.setState({course});

要更新
状态
值,我们需要在
设置状态
中传递
对象
,而不是分配
对象

此设置状态类似于一个函数,因此您使用“=”可能是错误的。

可能是错误的
=
设置状态后的字符
this.setState=({course:course})
应该是this.setState({course:course})为什么否决,现在我的答案有什么不对,谁否决请提供一个原因,我不是专家:),我想需要提供谁也否决了答案的名字,这样我们就可以问那个家伙,否决的原因。如果你认为任何人的答案不好或需要改进,在评论中写下这一点,或者写下你自己的答案,这样每个人都可以学到一些东西,而不是只是否决别人的答案,然后静静地坐着。setState({course})和setState({course:course})是一回事,几乎没有区别。澄清一下,我不是那个downvoted@ShubhamKhatri他用的是
this.setState=({})
,检查他的问题,我建议他
setState({})
,加上一点小改动,顺便说一句,我没有说你为什么否决我的答案:),我是问原因,无论谁被否决了这一条:)我知道你很习惯于追随你的答案,所以:)
const course = this.state.course;
course.title = event.target.value;
this.setState({course});