Пишу первый + - крупный проект на TypeScript + React и задался вопросом, неужели что бы использовать interface в state нужно записывать данные как объект:
const [filter, setFilter] = useState<IQuestionsFilter>({ filter: 'New' })
и почему нельзя просто написать:
const [filter, setFilter] = useState<IQuestionsFilter>('New')
вот сам interface:
export interface IQuestionsFilter {
filter: 'New' | 'Interesting' | 'Not Answer'
}
Ну это все бы ничего если бы не приходилось засорять код такими изменениями:
setFilter({ filter: 'New'})
Согласен, что можно было бы написать так:
const [filter, setFilter] = useState<'New' | 'Interesting' | 'Not Answer'>('New')
Но у меня много, где используются эти данные
New' | 'Interesting' | 'Not Answer'
именно по этому они и в interface.
Кто может подсказать любую информацию, как это правильно сделать, как делают другие, и тд. Спасибо)