HarmonyOS 鸿蒙Next 使用三方库Axios,如何在 Response 拦截器中根据条件(如 error message)调用 promptAction.showToast?

发布于 1周前 作者 phonegap100 来自 鸿蒙OS

使用三方库Axios,在Response拦截器中,根据条件(如error message),如何调用promptAction.showToas

3 回复

context.getContext().windowStage.getMainWindowSync().getUIContext().runScopedTask(() => { promptAction.showToast(‘msg 信息’); });

context 是上下文 建议初始化 app 的时候存在AppStorage

更多关于HarmonyOS 鸿蒙Next 使用三方库Axios,如何在 Response 拦截器中根据条件(如 error message)调用 promptAction.showToast?的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html


在HarmonyOS鸿蒙Next中使用三方库Axios,可以通过配置Axios的拦截器来实现对响应数据的处理。在Response拦截器中,你可以根据响应内容中的错误信息调用promptAction.showToast方法。以下是一个简要的实现示例:

import axios from 'axios';
import prompt from '@ohos.prompt'; // 假设promptAction是系统提供的prompt模块

// 创建Axios实例
const instance = axios.create({
    baseURL: 'https://api.example.com',
});

// 添加Response拦截器
instance.interceptors.response.use(
    response => response,
    error => {
        const { data } = error.response;
        if (data && data.message) {
            // 根据错误信息调用系统Toast
            prompt.showToast({
                message: data.message,
                durationShort: true,
            });
        }
        return Promise.reject(error);
    }
);

// 使用Axios实例进行请求
instance.get('/some-endpoint')
    .then(response => {
        console.log(response.data);
    })
    .catch(error => {
        console.error('Error:', error);
    });

以上代码展示了如何在Axios的Response拦截器中根据响应数据中的错误信息调用prompt.showToast。请确保prompt模块已经正确导入,并且符合HarmonyOS鸿蒙Next的API规范。

如果问题依旧没法解决请联系官网客服,官网地址是:https://www.itying.com/category-93-b0.html

回到顶部