Migruję projekt React z TypeScript, aby korzystać z funkcji hooków (React v16.7.0-alpha), ale nie mogę dowiedzieć się, jak ustawić typizację zniszczonych elementów.
Oto przykład:
interface IUser {
name: string;
}
...
const [user, setUser] = useState({name: 'Jon'});
Chcę, aby user
zmienna była typu IUser
. Moja jedyna zakończona sukcesem wersja próbna obejmuje dwie fazy: wpisywanie, a następnie inicjowanie:
let user: IUser;
let setUser: any;
[user, setUser] = useState({name: 'Jon'});
Ale jestem pewien, że jest lepszy sposób. Ponadto, setUser
powinny być inicjowane jako funkcję, która pobiera IUser
jako dane wejściowe i zwraca niczego.
Warto również zauważyć, że używanie const [user, setUser] = useState({name: 'Jon'});
bez inicjalizacji działa dobrze, ale chciałbym skorzystać z TypeScript, aby wymusić sprawdzanie typów w init, zwłaszcza jeśli zależy to od niektórych właściwości.
Dzięki za pomoc.