封装Uni-app中uni-request之typescript
// 定义请求配置的类型
interface RequestConfig {
url: string;
method?: 'GET' | 'POST';
data?: object;
header?: object;
}
// 封装uni-request的方法
function uniRequest(config: RequestConfig): Promise<any> {
return new Promise((resolve, reject) => {
uni.request({
url: config.url,
method: config.method || 'GET',
data: config.data,
header: config.header,
success: (res) => {
resolve(res);
},
fail: (err) => {
reject(err);
},
});
});
}
// 使用封装后的uniRequest方法
const getUserInfo = (userId: string): Promise<any> => {
return uniRequest({
url: `/api/user/${userId}`,
method: 'GET',
});
};
// 调用getUserInfo方法
getUserInfo('12345').then(response => {
console.log(response.data);
}).catch(error => {
console.error(error);
});
这个代码示例展示了如何在TypeScript中封装uni-request,并提供一个简单的getUserInfo
方法,用于获取用户信息。这个例子遵循了良好的编码实践,包括使用TypeScript的接口(RequestConfig
)来定义方法的配置对象,以及使用Promise处理异步操作。
评论已关闭