【发布时间】:2020-12-24 17:08:43
【问题描述】:
我正在使用useRef 挂钩将ref 属性传递到我的自定义FieldInput 组件中。然后将其用于验证我的表单。
const fieldRef = useRef();
...
const handleSubmitForm = (
values: FormValues,
helpers: FormikHelpers<FormValues>,
) => {
....
fieldRef.current.blur();
helpers.resetForm();
};
但是,我在 fieldRef.current 上收到一个错误 Object is possibly 'undefined'.。为了解决这个问题,我进行了以下更改:
const fieldRef = useRef<Input>(null);
...
fieldRef.current?.blur();
但是,我仍然收到Property 'blur' does not exist on type 'Input'. 的错误。这里,Input 是从 native-base 导入的。因此,我在提交表单时收到类型错误/警告。 An unhandled error was caught from submitForm()
我怎样才能摆脱这些错误?
在codesandbox中复制了完整的场景:https://snack.expo.io/@nhammad/jealous-beef-jerky-fix
【问题讨论】:
-
我可以点击搜索就好了。您指的是提交时的什么错误?
-
.blur()是一个 jQuery 调用。你在使用 jQuery 库吗?如果没有,则需要绑定事件或触发onBlur事件。
标签: javascript reactjs typescript react-native native-base