在微信小程序开发的过程中,在一个页面中对数据操作之后我们大多数时间都需要刷新一下当前界面以把操作之后的结果显示出来,但是如何在执行操作后进行本页面的刷新就成了一个问题很大但是很需要的操作。下面介绍一下微信小程序刷新当前界面的几种方法。

方法一:this.onLoad()

使用方法:在操作函数中调用this.onLoad()或that.onLoad()(有时候this的作用域不够的时候需要定义that = this)。

适用场景:本次操作对页面onLoad函数所携带的各种参数没有影响。这时候我们在页面第一次执行onLoad函数的时候可以定义一个变量_options将onLoad函数的参数options存储到这个变量中,等操作函数执行完毕时,调用this.onLoad(_options),如果本次操作之后下一次该界面加载时onLoad函数的options变量发生了改变则使用该方法无效。

方法二:this.onReady() 或者 this.onShow()(亲测有效)

使用方法:在操作函数中调用this.onReady()函数。

使用前提:本页面的数据操作需要在页面的onReady()或onShow()函数中完成。

方法三:定义标志

使用方法:在app.js中,定义一个全局变量Flag,默认值为false,进入其它页面的时候将它置为true,在页面的onShow方法里加一个判断,如果Flag为true的话,先将它的值设置为false,再调用接口获取数据。代码如下:

onShow: function(){
   if (app.globalData.Flag) {
      app.globalData.Flag = false;
      this.getData();//调用接口获取数据
   } 
} 

这种方法虽然感觉有点复杂而且笨重,但是确实可以解决实际问题。

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对的支持。

广告合作:本站广告合作请联系QQ:858582 申请时备注:广告合作(否则不回)
免责声明:本站资源来自互联网收集,仅供用于学习和交流,请遵循相关法律法规,本站一切资源不代表本站立场,如有侵权、后门、不妥请联系本站删除!

稳了!魔兽国服回归的3条重磅消息!官宣时间再确认!

昨天有一位朋友在大神群里分享,自己亚服账号被封号之后居然弹出了国服的封号信息对话框。

这里面让他访问的是一个国服的战网网址,com.cn和后面的zh都非常明白地表明这就是国服战网。

而他在复制这个网址并且进行登录之后,确实是网易的网址,也就是我们熟悉的停服之后国服发布的暴雪游戏产品运营到期开放退款的说明。这是一件比较奇怪的事情,因为以前都没有出现这样的情况,现在突然提示跳转到国服战网的网址,是不是说明了简体中文客户端已经开始进行更新了呢?