网站搜索

reactjs - mui ToggleButtonGroup 的 onChange 事件作为属性不起作用


当我将 onChange 的值作为 prop 传递以便重用时,我无法获取它

<ToggleButtonGroup
    orientation="vertical"
    value={view}
    exclusive
    onChange={handleFilterClick}
    sx={{
      width: '100%',
      '&.MuiToggleButtonGroup-root .Mui-selected': {
        backgroundColor: 'rgb(0 253 255 / 19%) !important',
      },
    }}
  >

在页面内

const handleChange = (event: React.MouseEvent<HTMLElement>, nextView: string) => {
setView(nextView);};

我有三个问题

  1. onChange 事件可以在不传递参数的情况下工作,但我无法获取值

  2. 我无法发送事件参数,事件已被弃用

  3. 当我添加参数时,我收到此错误:类型 '(event: React.MouseEvent, value: string) => void' 不能赋值给类型 'VoidFunction'

    <MntHeaderWidget CardTitle={RtToggle.CardTitle} ToggleValue={RtToggle.ToggleValue} headerIcon={RtToggle.headerIcon} handleFilterClick={(event: React.MouseEvent, value: string) => handleChange(event, value)} data={RtToggle.data} />

我应该如何传递函数?例如来自 MUI 的 Stackblitz(这个 onchange 事件在同一页面上,但我想把它作为 prop 传递):Stackblitz