【发布时间】:2021-01-18 23:13:03
【问题描述】:
有什么方法可以使用 Material UI 在一个道具中发送多个<MenuItem>?
Form.js
export default function MyForm = (props) => {
<FormControl
<Select value={ItemValue} >
items={props.items}
</Select>
</FormControl>
}
我尝试以不同的方式输出道具。在<MenuItem> 之间设置逗号只会呈现最后一个<MenuItem>。用<React.Fragment> 包裹它确实有效,但是MenuItem value 不会从value={ItemValue} 得到纠察
{ItemValue} 这里只是一个在事件处理中获取MenuItem value 的函数。
App.js
<MyForm
items={
<MenuItem value={1}>value 1</MenuItem>
<MenuItem value={2}>value 2</MenuItem>
<MenuItem value={3}>value 3</MenuItem>
<MenuItem value={4}>value 4</MenuItem>
}
/>
有什么合适的配置方法吗?
【问题讨论】:
-
Docs 声明菜单项必须是 Select 的直接后代,这就是您会遇到值问题的原因。我会考虑在您的 App.js 中提供一个标签/值数组,然后将它们映射为 Form.js 中的 MenuItem,这将允许您指定值和标签,同时还将 MenuItems 保留为直接后代。
标签: reactjs material-ui react-props