问题描述
const { data,error,...rest } = useSWR(
id ? `/api/v1/blogs/${id}` : null,fetcher
);
如何指定 ...rest
的类型?
const {data,...rest} : {data:any,error:Error,"I dont kNow what to place for ...rest"}
解决方法
如果 useSWR
的返回值已经是已知类型,则不需要,TypeScript 会知道 ...rest
中的内容。如果没有,您可以指定其他元素的类型。
interface Foo {
a: number
b: string
c: boolean
}
const { a,...rest }: Foo = { a: 1,b: '2',c: false }
如果这对您不起作用(如果您没有 useSWR 的类型并且不想写出返回对象中的其他字段),您可以将其称为 Object 或 {}
,然后投射 data
和 error
。