如何在功能组件中映射设置器



所以我有几个评级选项,每个选项都有一个单独的状态。有4种评级类型,我想定义一个常量rating_options,然后对其进行迭代以呈现评级。但是,我不确定是否可以为每个选项分配正确的setter

例如,我想要这样的东西:

const rating_options = [
{
"title": "title1",
"id": "rating-title1",
"setter": setTitle,
}
]

然后:

rating_options.map(item => {
return ( <Slider
defaultValue={0}
aria-labelledby={item.id}
step={5}
onChange={(e, newValue) => {item.setter}}
value={item.title}
valueLabelDisplay="on"
/>
)}

编辑:

const ContentView = ({ data, onClose, open }) => {
const [newsworthiness, setNewsworthiness] = useState(0)
const rating_options = [
{
"title": "title1",
"id": "rating-title1",
"setter": setNewsworthiness,
}
]

看起来您只需要用newValue参数调用item.setter

onChange={(e, newValue) => { item.setter(newValue); }}

最新更新