【发布时间】:2021-12-30 20:01:50
【问题描述】:
- 我在
useEffect挂钩中从 Firestore 获取用户数据,然后将数据置于某个状态。这部分工作正常。
const [profile, setProfile] = useState("")
useEffect(() => {
// Get user profile data from firestore..
setProfile(userData)
}, [])
- 我有 HTML 单选输入,用户可以在其中更改其性别,但我需要使用状态设置初始性别(他们在注册时选择的性别)。
const defaultGender = profile.gender
const [gender, setGender] = useState(defaultGender)
<input onChange={e => setGender(e.target.value)} type="radio" id="Man" name="gender" value="Man" checked={defaultGender === "Man"} /> <label htmlFor="Man">Man</label>
<input onChange={e => setGender(e.target.value)} type="radio" id="Woman" name="gender" value="Woman" checked={defaultGender === "Woman"} />
<label htmlFor="Woman">Woman</label>
问题是,使用此代码,console.log(gender) 返回undefined,我无法检查(选择)不同的性别,因为它卡在 Man 上。
【问题讨论】:
标签: javascript reactjs react-hooks use-effect use-state