微信小程序开发之异步转同步

onLoad: function(options) {

    //执行同步
    return new Promise(function (resolve, reject) {
      wx.checkSession({
        success: function (res) { resolve(res); },
        fail: function (res) {

          //同步代码好了,执行要执行的代码代码
          var that = this;
          wx.request({
            url: Util.exeCatalog(), //仅为示例,并非真实的接口地址
            data: {
              ParentId: 129,
            },
            method: ‘GET‘,
            header: {
              ‘content-type‘: ‘application/json‘ // 默认值
            },
            success(res) {
              var qa = res.data;//获取json数据

              var qaarr = [];//定义数组
              for (var i in qa) {

                var qacontentarr = [];//定义数组

                wx.request({
                  url: Util.exeContent(), //仅为示例,并非真实的接口地址
                  data: {
                    CatalogId: qa[i].CatalogId
                  },
                  method: ‘GET‘,
                  header: {
                    ‘content-type‘: ‘application/json‘ // 默认值
                  },
                  success(ress) {

                    qacontentarr = [];

                    var qacontent = ress.data;//获取json数据
                    for (var i in qacontent) {
                      var qaarrjson = {};
                      qaarrjson[‘zi‘] = qacontent[i].Title;
                      qaarrjson[‘li‘] = qacontent[i].Description;
                      qacontentarr.push(qaarrjson);
                    }

                  }
                })

                var qaarrjson = {};
                qaarrjson[‘id‘] = i;
                qaarrjson[‘hidden‘] = true;
                qaarrjson[‘title‘] = qa[i].CatalogName;
                qaarrjson[‘contentH‘] = qacontentarr;
                qaarrjson[‘image‘] = ‘/images/js.png‘;
                qaarr.push(qaarrjson);

              }

              that.setData({
                systemList: qaarr
              })

            }
          })

        }

      })
    })

  }

同步代码

onLoad: function(options) {

    //执行同步
    return new Promise(function (resolve, reject) {
      wx.checkSession({
        success: function (res) { resolve(res); },
        fail: function (res) {
             //执行的方法
        }
      })
    })    

}

原文地址:https://www.cnblogs.com/zpblogs/p/11323008.html

时间: 2024-08-01 07:26:07

微信小程序开发之异步转同步的相关文章

微信小程序开发入门教程

做任何程序开发要首先找到其官方文档,微信小程序目前还在邀请内测阶段,目前官方放出了部分开发文档,经过笔者一天的查看和尝试,感觉文档并不全面,但是通过这些文档已经能够看出其大概面貌了.闲话不多说,我们先来看看其有哪些官方文档. 微信公众平台开发者文档统一入口为:https://mp.weixin.qq.com/wiki,这里面大部分内容都是以前就有的,微信开发都是基于此份文档. 现在的变化是在这份文档的顶部加了一个“微信公众平台.小程序”的入口,这个入口才就是专门针对微信小程序开发的文档,如下图:

我们的微信小程序开发

基于微信小程序的系统开发准备工作 腾讯推出微信小程序也有一段时间了,在各种行业里面也都掀起一阵阵的热潮,很多APP应用被简化为小程序的功能迅速推出,同时也根据小程序的特性推出各种独具匠心的应用,相对传统的APP来说,微信小程序确实能够大大降低开发成本和难度,但也意味着需要掌握整个微信小程序的各种接口功能.应用场景等相关技术点,本篇随笔先从大的方面来介绍微信小程序开发的一些知识,如架构设计.技术路线 .工具准备等方面做一些浅薄的介绍,希望大家也有所收益,有所借鉴,则善莫大焉. 1.小程序的统一架构

微信小程序开发工具测评

1月9日微信小程序正式上线.很多企业都希望能在这个.但是在技术开发的问题上,却不知道该如何下手.经过一些程序员不辞辛苦连夜测试,终于从十余款工具呕心沥血筛选出四款比较靠谱实用的微信小程序开发工具.接下来一起来看看测评吧. 一.微信小程序官方开发工具 注意,它只是个工具,而不是一个IDE.官方工具中的代码编辑功能,就是将vscode的代码编辑功能嵌入到工具中,不足以支撑开发. 优点 因为是官方工具所以有这其它第三方工具有这不可比拟的天然优势,如果不是他代码编辑功能太弱的话. 官方工具,可调试,可预

微信小程序开发大神牛样本

微信小程序的推出,让很多App开发者忧喜参半.喜的是终于出现了一种全新的应用生态,不必再纠结于高昂开发成本的App:忧的是微信小程序开发人员需要增加学习成本,而非技术人员则更是无从下手开发具体流程如下:  1. 获取微信小程序的 AppID登录微信公众平台,就可以在网站的"设置"-"开发者设置"中,查看到微信小程序的 AppID 了,注意不可直接使用服务号或订阅号的 AppID .2. 创建项目我们需要通过开发者工具,来完成小程序创建和代码编辑.开发者工具安装完成后

资讯 | 2018年1月15日微信公开课解读!微信小程序开发资源

引言:2018年1月15日 微信公开课PRO开课了,本次课时内容将涉及:小程序.智慧零售.企业微信.小游戏  (附学习参考资料) 为了快速理解「2018 微信公开课 PRO 版」上张小龙的一小时演讲内容,结合下午微信公开课课室A_B_C的课时安排,这里为大家提前整理了相应的小程序学习参考资料: 微信公开课pro_A课室(14:00-17:50) 主题:小程序产品能力.开发.应用及规则 一.如何开发一个优秀的微信小程序/小游戏 微信小程序官方工具  https://mp.weixin.qq.com

微信小程序开发入门与实践

基础知识---- MINA 框架 为方便微信小程序开发,微信为小程序提供了 MINA 框架,这套框架集成了大量的原生组件以及 API.通过这套框架,我们可以方便快捷的完成相关的小程序开发工作. MINA 框架提供了自己的视图层描述语言 WXML 和 WXSS,以及基于 JavaScript 的逻辑层框架,并在视图层与逻辑层间提供了数据传输和事件系统,因此我们主要聚焦于数据与逻辑上. 响应的数据绑定 框架的核心是一个响应的数据绑定系统. 整个系统分为两块:视图层(View)和逻辑层(App Ser

微信小程序开发本地数据缓存教程

微信小程序开发过程中,本地数据缓存是必不可少的一部分.而且本地数据缓存的用途还挺多的,下面木鱼小铺(https://www.muyu007.cn)就和大家分享一下微信小程序开发本地数据缓存教程,希望对大家有所帮助! 第一步:读写本地数据缓存 微信小程序为了方便开发者缓存数据提供了读写本地数据缓存接口,读本地数据缓存采用的是wx.getStorage/wx.getStorageSync接口,写本地数据缓存的是wx.setStorage/wx.setStorageSync接口.其中以Sync结尾的是

Java微信小程序开发_00_资源帖

1.微信小程序开发:http://blog.csdn.net/column/details/13721.html?&page=1 2.微信小程序栏目:http://blog.csdn.net/column/details/14653.html?&page=2 3.

微信小程序开发心得

微信小程序也已出来有一段时间了,最近写了几款微信小程序项目,今天来说说感受. 首先开发一款微信小程序,最主要的就是针对于公司来运营的,因为,在申请appid(微信小程序ID号)时候,需要填写相关的公司认证信息如,营业执照等 再次就是用一个未曾开通过公众号的QQ号或微信号来注册一个微信小程序号. 最后,下载微信小程序开发工具. 由于这里,我们更多的关注如何去开发一些app,而不是科谱微信小程序,故在此不在过多的解释,详细的说明,可以去官网帮助文档. 首先,我们拿自己的项目在一步一步的说明并开发吧,