微信小程序 index.js获取app.js异步请求的动态数据
对于 “index.js不能获取app.js异步请求的动态数据” 这个问题,本人也是郁闷了好几分钟。
解决方法是:getApp().wxFunction().then(res => { })
先展示一下开始错误的代码吧
app.js:
globalData: {test: 1,
},onLaunch(options) {console.log("onLaunch");wx.request({url: 'https://www.xxx.com/api/xxx/xxx',method: 'POST',data: {test: 1},header: {'content-type': 'application/x-www-form-urlencoded'},success: res => {console.log("request");that.globalData.test = 2;}})
}
index.js:
onReady() {console.log("onReady")console.log(app.globalData.test);
},
打印结果:
此时在index.js中app.globalData.test的值是1,再看看打印的顺序,很明显wx.request的异步请求在最后,所以在index.js中并不能获取到动态数据。
接下来就是解决这个问题,这里我用的是Promise,再看看正确的代码
app.js
globalData: {test: 1
},wxLogin() {let that = this;return new Promise((resolve, reject) => {wx.request({url: 'https://www.xxx.com/api/xxx/xxx',method: 'POST',data: {test: 1},header: {'content-type': 'application/x-www-form-urlencoded'},success: function () {that.globalData.test = 2;}})})
},
index.js:
onReady() {// 这里的app已被定义 const app = getApp();app.wxLogin().then(res => {console.log(app.globalData.test);});
},
这时,app.globalData.test的值是2。
微信小程序 index.js获取app.js异步请求的动态数据相关推荐
- 微信小程序页面onLoad获取app.js的onLaunch数据(异步获取用户信息)
微信小程序声明周期 小程序的生命周期,简单来说:就是app.js里的onLaunch和页面里的page.js的onLoad异步执行. 通过回调函数架构起联系,便于获取app.js内的全局数据 代码 a ...
- 微信小程序开发(五) - 全局(app.js)逻辑 - js 文件
微信小程序中使用的逻辑文件 ,本质上还是.js 文件,脚本中的很多东西进行了二次封装,本质上可以在外部调试中,查看 逻辑层(App Service) 小程序开发框架的逻辑层由 JavaScript 编 ...
- 【微信小程序】—— 如何在app.js 和其他页面中更改globalData的值
在其他页面page中,修改globalData的方法是: var app = getApp(); app.globalData.isLogin = true; 而在app.js中需要注意的是,应当在小 ...
- 微信小程序开发日志——面向对象的JS编程
微信小程序开发日志--面向对象的JS编程 前言 不知道有多少小伙伴和之前的我一样,微信小程序的js部分都是用面向过程的方式写的,最后的结果就是代码非常长,其实刚刚写完还好,自己也都清楚哪些部分是做什么 ...
- 通过新浪云部署NideShop微信小程序商城(基于Node.js+MySQL+ThinkJS)
本文档为微信小程序商城NideShop项目的安装部署教程(GitHub),欢迎star 一.购买新浪云SAE 为什么选择SAE? 免费二级域名和支持https访问,不用备案,可用于做微信小程序服务器. ...
- 新浪云node加mysql_通过新浪云部署NideShop微信小程序商城(基于Node.js+MySQL+ThinkJS)...
一.购买新浪云SAE为什么选择SAE? 免费二级域名和支持https访问,不用备案,可用于做微信小程序服务器. 选择对应的部署环境 自定义 -> 开发言语:自定义 -> 运行环境:云容器 ...
- 微信小程序:未找到 app.json 中的定义的 pages “pages/index/index“ 对应的 WXML 文件
微信小程序:未找到 app.json 中的定义的 pages "pages/index/index" 对应的 WXML 文件 前情:本人在自学微信小程序时,遇到了调用模板出现错误的 ...
- 微信小程序中调用公共的js
微信小程序中调用公共的js 微信小程序中调用公共的js 实现思路: 将部分的js逻辑放到utils中,logs.js中调用utils.js中的方法 实现代码: utils.js: function f ...
- 微信小程序实现登录获取头像昵称
微信小程序如何来获取用户头像昵称 大家一定对下面这个图不陌生吧,我们在进入小程序之前,都会遇见类似这样的情况,那么这个是怎么用微信开发者工具实现的呢? 要求 1.首先,我们打开微信开发者工具,新建一个 ...
最新文章
- jquery实现加载更多效果
- Android优化——UI优化(二) 使用include标签复用布局
- WebService基于SoapHeader实现安全认证[webservice][.net][安全][soapheader]
- boost : has_to_string的用法测试程序
- Android的四大组件
- 如何写登录的记住账号
- 谷歌Chrome:将逐步阻止浏览器不安全下载内容
- jQuery--基本选择器
- 曹国伟:新浪将推新社交产品与微博互补
- 在RobotFramework--RIDE中把日期转化为整型进行运算
- jenkins--master/slave模式---master是容器版---slave是非容器版
- iOS项目内购(IAP)纯代码
- 【WPF】命令 --《深入浅出WPF》
- 前端进阶之——CSS背景、字体和文本样式
- CAJ格式文件怎么转换为PDF格式
- 教你如何免费使用云服务器
- 读书笔记----《平凡的世界》第四篇
- linux运行360wifi,Linux(Ubuntu)下的无线网络卡上的小米和360wifi教程
- 在Vue中同时使用过渡和动画
- 数据库实验7---数据库的备份与恢复
热门文章
- Lua 实现Get Set属性
- 银河麒麟V10服务器系统安装教程及注意事项
- 视频号小程序也能投放朋友圈引流变现了;附带视频号运营手册丨国仁网络
- 备忘录吕吕没有备忘录十新建_备忘录字段焦虑
- r语言绘制精美pcoa图_R数据可视化4: PCA和PCoA图
- ElasticSearch 分片(Shards)的详解
- MSSQL Server 2008 - express 版 安装 企业管理器Management Studio
- oracle集群启动状态,循序渐进:Oracle 11.2 RAC集群进程的初始化与启动过程
- nginx怎么防御DDOS攻击
- 电子扫描件怎么弄?这个方法值得了解