泛型可以将数据类型作为参数传递给函数或类,允许开发者在编译时制定类型,从而提高类型安全性和代码重用性。在axios中,可以使用泛型为响应数据定义类型约束。具体做法为,在axios请求时传递一个泛型参数,指定返回数据的类型。例如:
interface ResponseData {
code: number;
message: string;
data: T;
}
axios.get>('/api/users').then(response => {
const users = response.data.data;
// users的类型为User[]
});
上述代码中,定义了一个泛型接口ResponseData,其中data属性的类型由泛型T动态决定。在发起get请求时,将泛型参数传入axios.get函数中,指定返回数据的类型为ResponseData
注意:使用泛型时需要保证接口和类的实现具有泛型参数类型所要求的属性和方法。