我使用 react-hook-form 制作了一个简单的 type=radio 表单,它在 Chrome 上运行良好,但在 Safari 上不起作用。
这是我的代码。
import React, { useState } from "react"
import { useForm } from "react-hook-form"
const MemberCheck = () => {
const {
register,
handleSubmit,
} = useForm()
const onSubmit = ({ isMember }) => console.log({ isMember })
return (
<div className="member-check">
<h1>Question1</h1>
<p>{`Is this person already part of our member?`}</p>
<form onSubmit={handleSubmit(onSubmit)}>
<div className="radio-container">
<div className="radio-row">
<input {...register("isMember")} type="radio" value />
<label>Yes</label>
</div>
<div className="radio-row">
<input {...register("isMember")} type="radio" value={false} />
<label>No</label>
</div>
</div>
<input type="submit" />
</form>
</div>
)
}
export default MemberCheck
它应该提交我的答案 isMember=ture/false 但是 onSubmit 中的 console.log 显示
{isMember: null}
这只发生在 Safari 上。适用于 Firefox 和 Chrome。