我正在使用Material UI选择:https://material-ui.com/components/selects/
选择需要一些自定义功能。我已将其添加到CodePen沙箱中:https://codesandbox.io/s/material-demo-3nzpv
实现此目标的最佳方法是什么?
答案 0 :(得分:0)
在handleChange方法上,编写条件以仅在菜单项的值不具有不需要选择的值的情况下更改值
答案 1 :(得分:0)
您需要使用renderValue
组件中的Select
属性,以便cu custom呈现您选择的值。
将以下行添加到您的Select
组件中
renderValue={value => currencies.find(el => el.value === value).label}
您可以检查工作沙箱HERE的更新版本
您还可以查看有关Select
道具HERE
LE:更新第3点
在您的<DeleteIcon>
处理程序onClick
中,您需要进一步停止事件的传播。在handleDelete()
函数中,添加event
参数并使用e.stopPropagation()
方法。
const handleDelete = (e: React.ChangeEvent<HTMLInputElement>) => {
e.stopPropagation();
console.log("Delete");
};
您的组件应该看起来像这样
<MenuItem key={option.value} value={option.value}>
<div>{option.label}</div>
<div>{option.action && <DeleteIcon onClick={handleDelete}/>}/div>
</MenuItem>
/>
我还更新了沙箱,其最新版本为HERE