我正在尝试创建一个useFetch钩子,问题是任何对象/数组都可以作为数据出现,有没有可能以某种方式键入它,而不指定任何对象/数组?
- 示例**
function useRequest(url: string, method: Method, data: any) {
const [response, setResponse] = useState<any>(undefined)
const [isLoading, setIsLoading] = useState<boolean>(false)
const [error, setError] = useState<AxiosError | undefined>(undefined)
const requestNow = async () => {
setIsLoading(true)
try {
const response = await apiClient.post(url, data)
.....
1条答案
按热度按时间f45qwnt81#
如果您想确保只要
data
具有某些属性,就不关心它的实际类型,那么可以在TS中使用extends
关键字。请看这个例子:
看看这个Playground的例子。