javascript - 如何使用 React 将列表中的数据发送到表单中?

标签 javascript reactjs

我有一个元素列表和一个表单(用于创建/更改元素)。使用 React 我将其表示如下

...
render() {
    return (
        <div>
            <List/>
            <Form/>
        </div>
    )
}
...

每个列表元素都有一个更改按钮。单击它,获取元素字段值。如何使用元素值填充表单字段(无需 Redux)?

最佳答案

您需要管理父组件中的状态:

1) 单击列表元素时更改状态
2)通过添加属性将状态元素传输到表单组件

...
constructor(props) {
    super(props);
    this.state = {}
    this.fillForm = this.fillForm.bind(this);
}


fillForm(element) {
   this.setState({
      element: element
   });
}


render() {
   return (
       <div>
         <List onElementClick={this.fillForm} />
         <Form element={this.state.element}/>
       </div>
   )
}
...

List组件中,当单击某个元素时,您必须调用此函数this.props.onElementClick(elementClicked)

Form组件中,您可以通过此属性获取元素字段this.props.element

关于javascript - 如何使用 React 将列表中的数据发送到表单中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43495789/

相关文章:

javascript - OpenShift:来自 Nodejs 的多个发布请求被触发

javascript - querySelectorAll 在 IE8 中不起作用?

javascript - 当过滤数组为空时 Angular 隐藏

javascript - 如何通过 Context API 获取 React.Component 类中的数据?

javascript - 如何在 Angular 2 Webpack 中使用 WOW.js?

javascript - Flowtype:基于 Typehinting 类的 HOC 组件

javascript - React-select:自定义控件不呈现选择组件

javascript - 找不到 Amchart HTML 容器( react )

javascript - 在javascript和react中比较两个数组并在此基础上过滤一个数组

reactjs - react native 应用程序中的身份验证和 session 管理