微信小程序_Bug解决_setData失效 - 新闻资讯 - 云南小程序开发|云南软件开发|云南网站建设-昆明葵宇信息科技有限公司

159-8711-8523

云南网建设/小程序开发/软件开发

知识

不管是网站,软件还是小程序,都要直接或间接能为您产生价值,我们在追求其视觉表现的同时,更侧重于功能的便捷,营销的便利,运营的高效,让网站成为营销工具,让软件能切实提升企业内部管理水平和效率。优秀的程序为后期升级提供便捷的支持!

您当前位置>首页 » 新闻资讯 » 小程序相关 >

微信小程序_Bug解决_setData失效

发表时间:2020-9-21

发布人:葵宇科技

浏览次数:73

问题描述

想通过wx.setData修改page信息,但是无论怎样都修改不掉。

问题解决

起初我以为是函数里面this指向问题,最后发现不是。

代码如下:

nextPage() {
    let that = this;
    this.setData({
      page: (this.data.page)++
    },that.getNews(this.data.page,that.data.num));
    console.log(that.data.page,that.data.num);
  },

最后突然想到 “ ++ ” 是自增运算符,先使用后计算

我这么写,实际运算下来,等效于

page: (this.data.page);
(this.data.page)++ 

// 实际将 page 原来的值 又赋值给了page

而微信小程序 (this.data.page)++ ,它并不会修改data里面的数值。必须使用setData进行赋值。

只需要把 “++” 自增运算符放前面就好了。

nextPage() {
    let that = this;
    this.setData({
      page: ++(this.data.page)
    },that.getNews(this.data.page,that.data.num));
    console.log(that.data.page,that.data.num);
  },

这样就解决了,page数目正常+1。

相关案例查看更多