event.target.value 作为数字?

bac*_*co2 6 javascript typescript reactjs


const [data, Setdata] = useState<number[] >([]);
const [inputData, SetinputData] = useState<number>(0);
const [canAdd, SetcanAdd] = useState<boolean>(true);

  const numberField = (event: React.ChangeEvent<HTMLInputElement>) => {
    SetcanAdd(false)
    SetinputData(event.target.value);


    if(data.includes(event.target.value)){
      SetcanAdd(true)
    }

    // event.target.value Argument of type string is not assignable to parameter of type number
  };

  //jsx
    <input
        onChange={numberField }
        placeholder="add numbers"
        type="number"
        value={inputData}
     />

Run Code Online (Sandbox Code Playgroud)

我怎样才能设置event.target.value数字?

我知道我可以将所有内容设置为字符串,但我希望它是一个数字

bac*_*co2 18

将 event.target.value 更改为 event.target.valueAsNumber。

现在可以工作了!

编辑:哈哈,答案就在我的标题中