微信小程序开发:setData使用方法及注意事项

2018-11-2809:59:14APP与小程序开发Comments2,525 views字数 717阅读模式

微信小程序中,下拉刷新的时候,想将js中的变量直接用到wxml文件中,但是却一直不成功。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/xcx/8101.html

我是在app.js中直接定义了一个loginstatus的变量。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/xcx/8101.html

globalData: {
loginstatus:0
}

 文章源自菜鸟学院-https://www.cainiaoxueyuan.com/xcx/8101.html

然后在a.js中改变了它的值。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/xcx/8101.html

loginstatus=1;文章源自菜鸟学院-https://www.cainiaoxueyuan.com/xcx/8101.html

想当然的,以为这样下拉刷新后就会反映到wxml文件中了。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/xcx/8101.html

其实这中间,还缺少很多必要的。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/xcx/8101.html

首先应该在a.js的顶部加上文章源自菜鸟学院-https://www.cainiaoxueyuan.com/xcx/8101.html

var app = getApp();文章源自菜鸟学院-https://www.cainiaoxueyuan.com/xcx/8101.html

因为我是在app.js中定义的,所以要用到这个变量的页面,必须在顶部加上getApp()才行。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/xcx/8101.html

然后,再使用文章源自菜鸟学院-https://www.cainiaoxueyuan.com/xcx/8101.html

var loginstatus = app.globalData.loginstatus;文章源自菜鸟学院-https://www.cainiaoxueyuan.com/xcx/8101.html

最重要的是要使用setData来改变页面信息。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/xcx/8101.html

完整代码如下:文章源自菜鸟学院-https://www.cainiaoxueyuan.com/xcx/8101.html

//下拉刷新事件
var app = getApp();
Page({
onPullDownRefresh: function () {
var loginstatus = app.globalData.loginstatus;
loginstatus=1;
this.setData({
loginstatus: loginstatus
});
wx.stopPullDownRefresh();
}
})

 文章源自菜鸟学院-https://www.cainiaoxueyuan.com/xcx/8101.html

微信小程序开发:setData使用方法及注意事项文章源自菜鸟学院-https://www.cainiaoxueyuan.com/xcx/8101.html

需要注意的有两点。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/xcx/8101.html

1、如果使用this.data直接修改,而没有调用this.setData是改变不了页面的状态的,还有可能会造成数据不一致。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/xcx/8101.html

之前就遇到过,我直接使用this.data.num = 1,以为就可以了。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/xcx/8101.html

其实还需要setData来改变才行。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/xcx/8101.html

this.setData({
num: this.data.num
})

 文章源自菜鸟学院-https://www.cainiaoxueyuan.com/xcx/8101.html

2、微信小程序中setData单次设置的数据不能超过1024KB,使用时请避免设置过多的。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/xcx/8101.html

  • 本站内容整理自互联网,仅提供信息存储空间服务,以方便学习之用。如对文章、图片、字体等版权有疑问,请在下方留言,管理员看到后,将第一时间进行处理。
  • 转载请务必保留本文链接:https://www.cainiaoxueyuan.com/xcx/8101.html

Comment

匿名网友 填写信息

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen:

确定