首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在React-Admin中更新自定义组件的状态

如何在React-Admin中更新自定义组件的状态
EN

Stack Overflow用户
提问于 2019-11-08 16:31:14
回答 1查看 1.4K关注 0票数 0

我有以下场景:使用react-admin基础结构,对于资源,我有以下编辑视图:

代码语言:javascript
复制
import Editor from "react-simple-code-editor";

export const CodeQuestionEdit = props => (
  <Edit {...props}>
    <SimpleForm>
      <LongTextInput source="text" />
      <TextField label="Code Block" />
      <FormDataConsumer>
        {({ formData }) => (
          <Editor
            value={formData.codeBlock}
            onValueChange={code => {
              //Update the current edit form ....
            }}
            highlight={code =>
              highlight(code, languages.cs)
                .split("\n")
                .map(
                  line =>
                    `<span class="container_editor_line_number">${line}</span>`
                )
                .join("\n")
            }
            padding={10}
            className="container__editor"
          />
        )}
      </FormDataConsumer>
    </SimpleForm>
  </Edit>
);

编辑器组件不是react-admin的一部分,我如何使用用户键入的内容更新编辑器的状态?然后将这个值传递回更高的组件,所以当我保存时,我希望输入最后一个值。

EN

回答 1

Stack Overflow用户

发布于 2019-11-18 22:45:23

如果想要将用户输入的值保存到状态中并在以后使用它,可以使用onChange属性。

您可以为组件实现的一个简单示例可能如下所示:

首先,您需要一个将值从输入保存到状态的方法。

代码语言:javascript
复制
handleChange = (event) => {
   this.setState({ yourState: event.target.value });
};

然后,您只需要将onChange属性设置为您的输入。

由于您的组件包装在react-admin Edit中,因此保存过程应该是安全的。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/58762977

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档