uniapp 使用uni.showToast() 一闪而过

在浏览器中 微信开发者工具中 showToast()显示时间都正常,
只是上传体验版之后 showToast()显示时间过短
加入hideLoading() 也不起作用
显示前端定义字符串 显示正常
显示后端传入的内容 弹窗一闪而过
这是什么原因
怎么解决

检查一下封装的请求文件,有没有调用hideLoading(),如果调用了的话,把它注释掉试试

uni.showToast() 方法是 uni-app 框架中用来显示短暂提示框的 API,在开发者工具中和浏览器中显示正常,但是上传体验版之后显示时间过短可能是由于多种原因导致的。

其中一种可能是你在 showToast() 方法中没有指定时间参数,或者指定的时间过短,默认的显示时间是2000ms,如果你希望它显示的时间更长,可以在调用 showToast() 方法时传入第二个参数,例如:

uni.showToast({
    title: '提示内容',
    duration: 3000
});

这样可以让弹窗显示3s.

另一种情况是前端和后端的字符串不同,导致请求没有正常响应,如果在调试模式下看能看到请求返回的话,可以确认这一点。

还有一种可能是服务器上的网络环境不佳,导致请求响应时间过长。

如果是请求响应时间过长导致的问题,你可以考虑在请求发出之前显示一个loading提示框,在请求结束之后隐藏它。例如:

uni.showLoading({
    title: '请稍候...'
});

// 发起请求
uni.request({
    url: '请求地址',
    success: (res) => {
        uni.hideLoading();
    },