Как добавить обозначение типа в `React.useState`?

Я использую 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 имеет тип string, когда вместо этого я хочу это типа 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>>];

Другие вопросы по тегам