#javascript #reactjs #react-hooks #react-router
Вопрос:
Эта ошибка возникает после обновления машинописного текста и ввода строгого типа.
const token = 'aaa'
const fetchWithToken = (url: string, token: string) =>
axios.get(url, {
headers: {
Authorization: `Bearer ${token}`,
},
withCredentials: true
})
.then(result => result.data);
const { data: ProductDetail } = useSWR<ProductInfo>([`/goods?lim=8`, token], fetchWithToken, {
dedupingInterval: 1000000,
})
После объявления типа ProductInfo я помещаю функции token и fetchWithToken в api.
но ([ /goods?lim=8
, токен], fetchWithToken, { дедупингИнтервал: 1000000, }) Вот ошибка с красным подчеркиванием.
Argument of type '[string[], (url: string, token: string) => Promise<unknown>, { dedupingInterval: number; }]' is not assignable to parameter of type 'readonly [Key] | readonly [Key, Fetcher<ProductInfo> | null] | readonly [Key, Partial<PublicConfiguration<ProductInfo, any, Fetcher<ProductInfo>>> | undefined] | readonly [...]'.
Type '[string[], (url: string, token: string) => Promise<unknown>, { dedupingInterval: number; }]' is not assignable to type 'readonly [Key, Fetcher<ProductInfo> | null, Partial<PublicConfiguration<ProductInfo, any, Fetcher<ProductInfo>>> | undefined]'.
Type at position 1 in source is not compatible with type at position 1 in target.
Type 'Promise<unknown>' is not assignable to type 'ProductInfo | Promise<ProductInfo>'.
Type 'Promise<unknown>' is not assignable to type 'Promise<ProductInfo>'.
Type 'unknown' is not assignable to type 'ProductInfo'.ts(2345)
Я не смог решить эту проблему, поэтому я попытался удалить тип ProductInfo, но ProductDetail не
Он выводится в виде неизвестного значения.
как я могу это решить? Я не знаю.