wx.showToast瞬间消失wx.showToast闪烁问题,微信搜索功能

wx.showToast闪烁问题

在真实的业务场景下,请求接口需要调用 wx.showLoading(),接口请求结束调用 wx.hideLoading()。如果需要给用户提示错误信息,调用 wx.showToast(),在模拟器上没事,但是在真机上会出现提示信息闪烁一下,然后消失。

 

这个问题出现的原因就是因为小程序的内部处理 wx.showLoading() 和 wx.showToast() 调用的是同一个框,都受 wx.hideToast() 或者 wx.hideLoading() 的影响。 
比如在真机上你的代码顺序为 wx.showLoading() =>wx.hideLoading() => wx.showToast() ;但是实际你看到的现象是 wx.showLoading() => wx.showToast() =>wx.hideLoading(),受到最后的 wx.hideLoading() 影响,toast 框闪烁一下就消失; 
 

wx.showLoading();
wx.hideLoading();
setTimeout( () => {
  wx.showToast({
    title: '提示的错误术语',
    icon: "none",
  });
  setTimeout( () =>{
    wx.hideToast();  
  },2000)
},0);

// 看到代码就明白了,其实就是把 wx.showToast() 放到事件队列的队尾去执行。

微信搜索功能

1、name=‘search’;//search内容随便写
2、bindconfirm='shop_search_function';//这个变量是js函数
3、confirm-type='search' ;//设置右下角文字

上述属性必须在 input 属性上,、bindconfirm='shop_search_function';实现点击软键盘的 "完成" 按钮触发事件

confirm-type='search' 属性,用来设置软键盘显示的文字,默认为“done” 显示完成,(input必须设置 type='text' 才会生效);

设置 name=‘search’ 才能通过 e.detail 获取到输入框的文字

你可能感兴趣的:(前端,微信小程序,html)