如何向“React.useState”添加类型符号?

IT技术 javascript reactjs typescript react-hooks
2021-05-03 20:15:07

我正在使用带有钩子的 React 16.8.3,目前我想输入 React.useState

type Mode = 'confirm' | 'deny'  
type Option = Number | null

const [mode, setMode] = React.useState('confirm')
const [option, setOption] = React.useState(100)

使用我当前的代码,mode是 type string,而我想要它的 type Mode相同的问题Option

如何添加类型符号React.useState

1个回答

React.useState 使用泛型,因此您可以通过这种方式向其添加类型符号:

const [mode, setMode] = React.useState<Mode>('confirm')
const [option, setOption] = React.useState<Option>(100)

仅供参考……的类型定义React.useState

function useState<S>(initialState: S | (() => S)): [S, Dispatch<SetStateAction<S>>];