0

我正在构建一个表单并收到一个我不太理解的错误。

当我像这样使用 Material UI 中的 TextField

<TextField
                fullWidth
                id="name"
                name="name"
                label="Name"
                type="name"
                value={formik.values.name}
                onChange={formik.handleChange}
                error={formik.touched.name && Boolean(formik.errors.name)}
                helperText={formik.touched.name && formik.errors.name}
            />

没有错误出现,输出和行为符合预期。

当我像这样使用Formik useFormik 文档中的标签和输入时

<label htmlFor="name">Name</label>
                <input
                    id="name"
                    name="name"
                    type="text"
                    onChange={formik.handleChange}
                    value={formik.values.name}
                />

我收到以下错误

Type 'string | null' is not assignable to type 'string | number | readonly string[] | undefined'.
  Type 'null' is not assignable to type 'string | number | readonly string[] | undefined'.ts(2322)
index.d.ts(2118, 9): The expected type comes from property 'value' which is declared here on type 'DetailedHTMLProps<InputHTMLAttributes<HTMLInputElement>, HTMLInputElement>'
(JSX attribute) InputHTMLAttributes<HTMLInputElement>.value?: string | number | readonly string[] | undefined

我想尝试 formik useFormik 中最简单的输入字段,以了解如何使用valueand更新每个输入字段的状态onChange,但如果没有此错误,我似乎无法将 TextField 转换为基本输入:/

4

0 回答 0