【问题标题】:REACT ADMIN | TEXTINPUT CHANGE VALUE反应管理员 |文本输入更改值
【发布时间】:2020-09-04 11:24:25
【问题描述】:

如何更改react-adminTextInput 的值。

我的想法是

<TextInput label="..." source="..." value="MY VALUE" />

但这不起作用。 请帮忙。

【问题讨论】:

标签: reactjs react-admin


【解决方案1】:

您不能使用react-adminTextInput 执行此操作,因为它是支持react-final-form 表单的连接字段,因此您无法控制输入。

你应该说明你的最终目标是什么。我可以想到两个选择:

  1. 如果您想要控制输入,您可以简单地使用material-uiTextField 并将您的自定义value 传递给它,并处理onChange 事件。

  2. 如果你不想自己控制值,而是在某些情况下改变表单状态,那么你可以使用react-final-form提供的钩子:

    const form = useForm();
    form.change("myValue", newValue);
    ...
    <TextInput label="My Value" source="myValue"  />
    

【讨论】:

    【解决方案2】:

    如果您输入的值为 null 或未定义,您可以使用 initialValue 属性在页面加载时设置该值。

    &lt;TextInput source="mySource" initialValue="MY VALUE" /&gt;

    查看 React-Admin 输入文档:https://marmelab.com/react-admin/Inputs.html#common-input-props

    如果您希望在页面加载后动态更改值,我建议您按照 Kia 的回答来利用 useForm 挂钩。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2018-10-02
      • 1970-01-01
      • 2019-12-20
      • 1970-01-01
      • 2016-02-29
      • 2010-11-21
      • 1970-01-01
      • 2013-10-31
      相关资源
      最近更新 更多