onShow中写入的函数在360手机会不停的重复执行
发布于 7 年前 作者 juancheng 3820 次浏览 来自 官方Issues

写入onShow中的函数在360手机中会不停重复的调用。如this.getClient(2, false); 中写入wx.request,就会不停的重复请求数据,导致页面一直在加载

onShow: function () {

    this.getClient(2, false);

  },

getClient: function (index, status) {

    var _this = this;

    let text = status ? “刷新中…” : “加载中…”;

    wx.showLoading({

      title: text,

      mask: false

    });

    wx.request({

      url: `${_this.data.domain}/Ticket/Package/customerList`,

      data: {

        user_id: _this.data.user_id,

        city: _this.data.tab[index].reqParam.city,

        page: _this.data.tab[index].reqParam.page,

        size: _this.data.tab[index].reqParam.size,

      },

      header: {

        “content-type”: “application/x-www-form-urlencoded”

      },

      method: “POST”,

      success(res) {

        //loading

        wx.hideLoading();

        if (res.data.code == 200) {

          let list = _this.data.tab[index].reqParam.page == 1 ? res.data.message : […_this.data.clientList, res.data.message];

          _this.setData({

            clientList: list

          })

        } else {

          if (_this.data.tab[index].reqParam.page == 1) {

            _this.setData({

              clientList: []

            })

          } else {

            wx.showToast({

              title: ‘没有更多数据了!’,

              icon: ‘none’,

              duration: 2000

            })

          }

        };

      }

    })

  },

3 回复

微信版本更新至最新版本看下问题是否还存在,未解决,建议是提供能复现问题的简单代码片段(https://developers.weixin.qq.com/miniprogram/dev/devtools/minicode.html)。

谢邀,但是这有点神奇了,没用过360的手机,也没见过这个bug。你尝试onshow里写个简单的i++打印看一下

回到顶部