I have a simple code to fetch data via Axios:
const response= await axios.get("blabla");
and now I'm trying to use typescript.
When I add the type to the get method it works:
const response= await axios.get<Todo[]>("blabla");
but what i need is something like:
const response:Todo[] = await axios.get("blabla");
but if i do that i get an error on response.data
saying: Property 'data' does not exist on type 'Todo[]'
so 2 questions: 1) why didn't it happen for the first approach? 2) how to do the second way?
axios.get()
returns an AxiosResponse<any>
object, where response.data
is any
.
axios.get<Todo[]>()
returns an AxiosResponse<Todo[]>
object, where response.data
is Todo[]
.
So you can type response
as:
const response: AxiosResponse<Todo[]> = await axios.get("blabla");
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With