![](/img/trans.png)
[英]material ui slider component onChange event not working with Fromik handleChange event
[英]Use onChange in Material UI tabs handleChange function in React component
目前我有这样的导航设置:
<div>
{letters?.map((letter) => {
return (
<button
type="button"
key={item.value}
data-active={value === item.value}
onClick={() => {
if (onChange) {
onChange(item.value);
}
}}
>
{item.label}
</button>
);
})}
</div>
我想改变它,使用Material UI tabs 。
我有以下内容:
const MyComponent = ({ firstLetters }: Props) => {
const [value, setValue] = useState(0);
const handleChange = (_event: React.ChangeEvent<{}>, newValue: string) => {
console.warn(newValue);
setValue(newValue);
};
return (
<Tabs css={styles.tabsRoot} value={value} onChange={handleChange}>
{firstLetters?.map((item) => {
return (
<Tab
key={item.value}
label={item.label}
disableRipple
/>
);
})}
</Tabs>
)
};
如何像我之前的onClick
function 回调到handleChange
function 一样使用onChange
?
根据MUI docs ,您应该在Tabs
组件中有value
和onChange
道具。 因此,您应该从Tab
组件中删除onClick
道具,并添加上述Tabs
道具,如下所示:
<Tabs value={value} onChange={handleChange}>
{letters?.map((item) => {
return (
<Tab
key={item.value}
label={item.label}
disableRipple
value={item.value}
/>
);
})}
</Tabs>
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.