Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/asp.net-mvc-3/4.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
ReactJS事件-this.props.onSubmit(this.state…)_Reactjs_Event Handling_React Props_Eos - Fatal编程技术网

ReactJS事件-this.props.onSubmit(this.state…)

ReactJS事件-this.props.onSubmit(this.state…),reactjs,event-handling,react-props,eos,Reactjs,Event Handling,React Props,Eos,下面的代码片段来自一个简单的待办事项列表,该列表将信息存储在本地EOS区块链上,并具有一个构建在ReactJS上的前端web界面。这个问题与ReactJS有关,特别是事件处理程序代码片段 saveTodo(e) { e.preventDefault(); this.props.onSubmit(this.state.description) this.setState({ description: "" }) } 完整的程序可以在这里找到 在事件处理程序的主体中,有一行this.p

下面的代码片段来自一个简单的待办事项列表,该列表将信息存储在本地EOS区块链上,并具有一个构建在ReactJS上的前端web界面。这个问题与ReactJS有关,特别是事件处理程序代码片段

saveTodo(e) {
  e.preventDefault();
  this.props.onSubmit(this.state.description)
  this.setState({ description: "" })
}
完整的程序可以在这里找到

在事件处理程序的主体中,有一行this.props.onSubmit(this.state.description)。我想知道这里到底发生了什么

我是ReactJS新手,上面这行代码似乎是通过调用内置函数onSubmit()并使用从状态对象检索的参数来设置属性(props)。这是正确的吗?我不知道在这段代码中,onSubmit()是如何分配给props的,但不知何故,我们可以这样使用它:this.props.onSubmit(this.state.description)…。这是怎么回事

谢谢你


请原谅这个术语。我不确定“事件处理程序”或“事件侦听器”是否是正确的词。

TodoForm组件采用属性“onSubmit”

该行只是调用这个属性(由其父属性传递给它)并传入描述(取自TodoForm的状态)

例如:

<TodoForm onSubmit={(description) => alert(description)} />
alert(description)}/>

谢谢Mathew,在您的示例中,您正在实现该功能,这将导致一个警报(说明)。但是,在链接的完整代码中,似乎没有实现该功能。调用this.props.onSubmit(this.state.description)之后会发生什么?render(){return(………)@kamiss在链接的完整代码中,如果查看TodoList的render函数,您会看到
,因此在本例中,onSubmit属性设置为TodoList中声明的
addNewTodo
函数。如果查看,
addNewTodo(说明)
采用与传递到属性中相同的描述参数。谢谢Mathew,我终于理解了它!