收藏
回答

回调中使用wx.showToast 闪一下就消失?

问题模块 框架类型 问题类型 API/组件名称 终端类型 操作系统 微信版本 基础库版本
API和组件 小程序 Bug wx.showToast 客户端 iOS 6.6.1 1.9.9

在开发工具中能正常显示,但是在ios客户端,都是一闪就消失了,显示时间都是默认的1500ms,部分代码如下:


api.checkDeliveryDistance(receiveAddressID, shopID, function (data) {


if (data.Data) {

that.setData({

paymentFlg: false

});

} else {

util.showMessage(data.Message);

}

});



function showMessage(title,icon,duration){

if (isNullOrEmpty(icon)){

icon = "none";

}

if (isNullOrEmpty(title)){

title="出错啦!!!";

}


if (isNullOrEmpty(duration)){

duration = 1500;

}

wx.showToast({

title: title,

icon: icon,

duration: duration

});

}


最后一次编辑于  2018-05-16  (未经腾讯允许,不得转载)
邀请回答
复制链接收藏投诉关注问题回答

1 个回答

  • HS
    HS
    2018-05-16

    在 showtoast 前打印并检查一下 duration 的值看看是否符合预期?确保代码别的地方没有调用 hidetoast

    2018-05-16
    赞同
    回复 8
    • 孙文
      孙文
      2018-05-16
      谢谢你的关注,不过我有用过console输出到控制台,检测过duration的延迟时间,是正常的1500ms,整个系统中都没有使用过hidetoast。
      2018-05-16
      回复
    • HS
      HS
      2018-05-16回复孙文
      可以写个最简单的 demo 来测一下 showToast 看是否会有问题呢?或者使用远程调试断点看看?
      2018-05-16
      回复
    • 孙文
      孙文
      2018-05-16回复HS
      我正在用远程调试,不过还没找到原因,但是,现在在开发工具中式能正常显示toast,但是在真机中却是一闪而过,而且这个是一个共通方法,不在回调方法中调用时正常的。
      2018-05-16
      回复
    • HS
      HS
      2018-05-16回复孙文
      showMessage 是否有被多次调用呢?感觉像是代码的问题
      2018-05-16
      回复
    • 孙文
      孙文
      2018-05-17回复HS
      检查过,也单独拿出来debugger,每次只会有一次命中,最奇怪的是PC是好的,真机是异样,是不是在手机上要特殊处理,类似于background-image这样在PC上可以但是不能用在手机上
      2018-05-17
      回复
    查看更多(3)