【问题标题】:React Hook Form - Controller : Migrating from v5 to v6React Hook 表单 - 控制器:从 v5 迁移到 v6
【发布时间】:2020-10-27 09:44:46
【问题描述】:

我正在使用 React Hook Form v5,这是 Controller 组件的语法:

<Controller as={Input}
   name="test"
   onChange={([_, value]) => value}
   onChangeName="onTextChange"
   onBlur={([_, value]) => value}
   onBlurName="onTextChange"
   valueName="textValue"
 />

这是 RHF v6 中 Controller 的语法:

 <Controller name="test"
   render={({ onChange, onBlur, value }) => {
     return <Input
       valueName={value}
       onTextChange={(val) => onChange(value)}
       onTextBlur={(val) => onBlur(value)}
     />
   }}
 />

问题是,升级后旧的控制器仍然可以工作,我希望保留它们,因为我当前的代码中有很多它们,并且需要大量时间来替换它们。这样做有什么大风险吗?

请给我一些建议,谢谢你的时间!

【问题讨论】:

    标签: reactjs react-hook-form


    【解决方案1】:

    我建议您阅读更新日志。

    https://github.com/react-hook-form/react-hook-form/blob/master/CHANGELOG.md

    Controller 是从 v5 到 v6 的主要变化之一。

    • 我们仍然保留as 道具,但删除了许多额外的道具
    • 我们引入了render 属性以实现更多自定义使用

    如果您使用as 的项目一切正常,我仍然建议删除那些未使用的道具。

    • onChange
    • onChangeName
    • 开启模糊
    • onBlurName
    • 值名称

    【讨论】:

      猜你喜欢
      • 2022-10-11
      • 2022-01-17
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-04-09
      • 2022-06-17
      • 2021-07-10
      • 2020-10-03
      相关资源
      最近更新 更多