Type'string []'不能分配给类型'never []'

问题描述 投票:0回答:3

在打字稿中,出现以下错误:Type 'string[]' is not assignable to type 'never[]'.

我想将'abc'添加到数组中,这怎么了?

export default function App() {
  const [text, setText] = React.useState("abc");
  const [arr, setArr] = React.useState([]);

  const xx = () => setArr([...arr, text]);

  return <div className="App">{text}</div>;
}

https://codesandbox.io/s/boring-spence-08g8r?file=/src/App.tsx:56-272

reactjs typescript
3个回答
0
投票
  const initArr: string[] = [];
  const [text, setText] = React.useState("abc");
  const [arr, setArr] = React.useState(initArr);

仅尝试定义您的初始化数组


0
投票

const [arr, setArr] = React.useState([] as string[]);

编译器需要知道数组的类型。


0
投票

在第二个useState语句中定义数组的类型,

喜欢:const [arr, setArr] = React.useState<string[]>([]);

© www.soinside.com 2019 - 2024. All rights reserved.