微信小程序 调用远程接口,给全局数组赋值
2023-09-14 08:58:22 时间
关键是 let that = this
因为在onLoad 的 wx.request方法里, this指的是 wx.request 的上下文, 所以应该是在 onLoad 的时候定义 let that = this
调用远程服务,序列化后,把obj赋值给bookList
正确代码如下:
Page({ data: { bookList: [] }, onLoad: function() { let that = this wx.request({ url: 'https://jiashubing.cn/wechat/book', header: { 'content-type': 'application/json' }, success(res) { var obj = JSON.parse(res.data) console.log(obj) that.setData({ bookList: obj }) } }) } })
最开始的报错代码如下:
Page({ data: { bookList: [] }, onLoad: function() { wx.request({ url: 'https://jiashubing.cn/wechat/book', header: { 'content-type': 'application/json' }, success(res) { var obj = JSON.parse(res.data) console.log(obj) this.setData({ bookList: obj }) } }) } })
报错为:
VM3293:1 thirdScriptError
Cannot read property 'setData' of null;at pages/index/index onLoad function;at api request success callback function
TypeError: Cannot read property 'setData' of null
报错原因是this 指向有问题,得在onload的时保存实例指向,let that = this,下面全用that,this指向永远值得是自己的上下文环境
原创文章,欢迎转载,转载请注明出处!
相关文章
- java个人微信消息接收_java接口接收json数据
- GoLang接口---下
- 微信小程序轮播图调用接口
- 微信公众号服务器接口验证示例
- 微信公众号开发(一)服务器及接口的配置
- 微信公众平台开发教程Java版(二) 接口配置
- 接口流量突增,如何做好性能调优?
- 【说站】多接口带头像挂件制作短视频去水印微信小程序源码
- 这个深度学习库能执行10多种图像文本任务,有20多个数据集,还统一接口|已开源
- 这个深度学习库能执行10多种图像文本任务,有20多个数据集,还统一接口|已开源
- .NET WebAPI 实现 接口版本控制并打通 Swagger支持
- Rpc接口压测_rpc服务接口测试
- 个人号微信api接口开发_API接口授权系统php源码
- 微服务项目:尚融宝(7)(后端接口:创建尚融宝接口工程)
- PHP实现微信提现V3版本2022-5更新接口:商家转账到零钱
- 动态接口比例性能测试实践
- PHP实现微信公众号企业号自定义菜单接口示例
- 微信公众号内容接口
- 工程监测仪器振弦模拟信号采集仪VTN的传感器接口
- 微信客服接口对接-签名验签-微信客服GET请求回调URL验证解析返回数据-【唯一客服】
- 微信客服API接口对接-获取access_token-调用其他接口时都需要获取-【唯一客服】
- Go-RESTful-设计API接口(二)
- 构建更高效的Redis缓存接口方案(接口redis缓存方案)
- PHP对接微信公众平台消息接口开发流程教程