我正在尝试使用 React 中的语义 UI 编写一个单选按钮组。我可以让语义 UI的Radio 页面上的 Radio Group 示例工作。它是通过扩展编写的Component
。我想写同样的事情,将 React 组件定义为函数而不是类并使用state hook。我不能让它工作。
我修改了这个例子,看起来像这样。
import React, {useState} from 'react'
import {Form, Radio} from 'semantic-ui-react'
export const RadioExampleRadioGroup = () => {
const [value, setValue] = useState({});
const handleChange = event => setValue({value: event.target.value});
return (
<Form>
<Form.Field>
Selected value: <b>{value.value}</b>
</Form.Field>
<Form.Field>
<Radio
label='Choose this'
name='radioGroup'
value='this'
checked={value.value === 'this'}
onChange={handleChange}
/>
</Form.Field>
<Form.Field>
<Radio
label='Or that'
name='radioGroup'
value='that'
checked={value.value === 'that'}
onChange={handleChange}
/>
</Form.Field>
</Form>
)
};
当我单击单选按钮时,UI 中没有任何react。
在调试器中运行我看到它handleChange
被调用并且似乎在做正确的事情,但它看起来像是undefined
传递给checked
函数。
我在这里做错了什么?