簡體   English   中英

React Typescript:類型參數不可分配給類型參數

[英]React Typescript: Argument of type is not assignable to parameter of type

它是一個用於創建復選框按鈕的 React 組件,我在 setRSelected(1),setRSelected(2)...

  const [cSelected, setCSelected] = useState([]);
  const [rSelected, setRSelected] = useState();

  const onCheckboxBtnClick = (selected: never) => {
    const index = cSelected.indexOf(selected);
    if (index < 0) {
      cSelected.push(selected);
    } else {
      cSelected.splice(index, 1);
    }
    setCSelected([...cSelected]);
  }
  return (
    <div>
      <h5>Radio Buttons</h5>
      <ButtonGroup>
        <Button color="primary" onClick={() => setRSelected(1)} active={rSelected === 1}>One</Button>
        <Button color="primary" onClick={() => setRSelected(2)} active={rSelected === 2}>Two</Button>
        <Button color="primary" onClick={() => setRSelected(3)} active={rSelected === 3}>Three</Button>
      </ButtonGroup>
      <p>Selected: {rSelected}</p>
    </div>
  );
} 

我收到此錯誤: Argument of type '1' is not assignable to parameter of type 'SetStateAction<undefined>'.

我怎樣才能解決這個問題

你應該像這樣使用useState時聲明類型:

const [rSelected, setRSelected] = useState<number | undefined>();

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM