小程序setData()使用和注意事项
2024-08-27 10:45:52
注意:
- 直接修改this.data,而不调用this.setData(),是无法改变当前页面的状态的,会导致数据不一致
- 仅支持可以JSON化的数据
- 单次设置的数据不能超过1024KB,尽量避免一次设置过多的数据
- 不要把data中的任何一项的value设为undefined,否则这一项将不能被设置,可能会有潜在的问题
代码示例:
Page({ /**
* 页面的初始数据
*/
data: {
value:"初始值" //定义一个变量value,赋值为:“初始化” },
/**
* 生命周期函数--监听页面加载
*/
onLoad: function (options) { }
})
直接在wx:request()的success回调函数中使用this.setData()会报这样一个错误:
因为这里的this是相对于wx:request()的当前对象
解决:因为这里的wx:rewuest()是在页面加载时调用,所以我们可以在onLoad()中定义一个变量that ,将this赋值给that,那么此时的that代表相对于onLoad()的当前对象,然后在success回调函数中直接使用that.setData()即可。
这是设置Page data的示例:
Page({ /**
* 页面的初始数据
*/
data: {
score_list: null,
guanka_list: null,
currentTab: 0
}, /**
* 生命周期函数--监听页面加载
*/
onLoad: function (options) {
var that = this //定义一个全局变量that
wx.request({
url: app.globalData.baseUrl + "query/rankByScore",
type: 'GET',
dataType: 'json',
success: function (res) {
that.setData({
score_list: res.data.data
})
console.log(1, res)
}
})
}
})
最新文章
- ifram-locatione页面跳转
- datatable去重
- Issue 3:数据处理基本认识
- codevs1227
- Uniform Generator 分类: HDU 2015-06-19 23:26 11人阅读 评论(0) 收藏
- C++ 数组参数
- .NET基础之:i++和i=i+1和++i的区别
- Oracle中存储过程传入表名学习
- LeetCode_Word Ladder
- Chapter 1 Securing Your Server and Network(1):选择SQL Server业务经理
- 02-JAVA基础及面向对象(补充)
- pulltorefresh 设置刷新文字提示颜色
- python的str()和repr()的区别
- Echarts——一个简单的嵌套饼图
- C# 将普通字符串转换为二进制字符串
- 1000/problem/A
- 【XSY2669】归并排序 树状数组 简单组合数学
- mybatis10--自连接多对一查询
- (转)C# Windows服务 弹出消息提醒框
- bootStrap中的ul导航
热门文章
- 第05组 Alpha事后诸葛亮
- Repair Microsoft.VisualStudio.MinShell.Msi.Resources 2203 error And visual studio 2019 key
- WinCC的画面使用技巧
- 基于TCP协议的socket套接字编程
- Java连载40-参数传递、this关键字
- 黄聪:php一句代码让http跳转https
- 数据库——SQL-SERVER练习(6) 数据库安全性
- 【linux】linux命令lsof和grep命令的配合使用---linux根据端口查看PID,根据PID关键字高亮显示
- 如何真正实现由文档驱动的API设计?
- django9-ajax