赞成promise
吐槽小程序异步API接口调用方式- 需求的场景描述(希望解决的问题) 小程序提供API接口大部分都是异步接口,但是有些接口又依赖于其他接口的调用结果,这就造成为了实现一个接口调用需求而进行多层代码嵌套,代码相当不美观,也不利于开发者维护。 例如:要获取当前连接的WiFi信息,则需要三个API的嵌套调用来实现获取WiFi信息,然后再与服务器进行交互: [代码]wx.getNetworkType({ [代码][代码]//获取当前网络类型[代码] [代码] [代码][代码]success(res) {[代码][代码] [代码][代码]const networkType = res.networkType[代码][代码] [代码][代码]if[代码] [代码](networkType === [代码][代码]'wifi'[代码][代码]) {[代码][代码]//判断是wifi环境[代码][代码] [代码][代码]wx.startWifi({ [代码][代码]//初始化WiFi[代码][代码] [代码][代码]success(res) {[代码][代码] [代码][代码]console.log(res.errMsg)[代码][代码] [代码][代码]wx.getConnectedWifi({ [代码][代码]//获取WiFi信息[代码][代码] [代码][代码]success(res) {[代码][代码] [代码][代码]console.log(res.errMsg)[代码][代码] [代码][代码]wx.request({ [代码][代码]//信息获取成功,与服务器进行交互[代码][代码] [代码][代码]url: [代码][代码]'test.php'[代码][代码], [代码][代码]//仅为示例,并非真实的接口地址[代码][代码] [代码][代码]data: {[代码][代码] [代码][代码]x: [代码][代码]''[代码][代码],[代码][代码] [代码][代码]y: [代码][代码]''[代码][代码] [代码][代码]},[代码][代码] [代码][代码]success(res) {[代码][代码] [代码][代码]console.log(res.data)[代码][代码] [代码][代码]//服务器返回成功后进行页面处理[代码][代码] [代码][代码]//TODO[代码][代码] [代码][代码]}[代码][代码] [代码][代码]})[代码][代码] [代码][代码]}[代码][代码] [代码][代码]})[代码][代码] [代码][代码]}[代码][代码] [代码][代码]})[代码][代码] [代码][代码]}[代码][代码] [代码][代码]}[代码][代码]})[代码] 以上代码除了繁琐不美观之外,还不利于维护 - 希望提供的能力 希望官方团队能将异步API实现可指定异步或同步,或者是将API封装成Promise对象,这样开发者可方便自由的通过Promise对象来模拟异步同步,还可以简化接口嵌套,简化代码,方便维护。 之所以希望官方团队将异步API封装成Promise对象而不是自己去封装,是基于良好的版本升级的考虑,如果是自己去封装,万一某次版本升级将某些API改变或者废弃,或者新增某些API,这对于开发者来说,去维护自己的封装也将是很大的开发成本。 既然小程序支持ES6的转码,那么,个人认为,如果官方团队能将所有的异步API升级为返回Promise对象,那将是对开发者相当友好的一件事,会增加开发者的热情和积极性,同时也更利于开发者维护代码。 - 补充: 其实我觉得学习promise的简单使用的成本并不是太高,尤其是跟多层嵌套调用、不利于维护等比起来,真心个人感觉这点学习成本很低。 当然,也不是没有解决办法, 比如可以通过在全局的app.js中增加一个配置项,用来指定是否全局开启异步API的promise调用方式,或者是在单个API中增加一个配置项,来指定当前API是使用原本的异步方式还是使用promise方式。 这只是个人建议,仅供参考。但我真心觉得异步API使用promise肯定会越来越成为更多开发者的呼唤和心声的!
2018-11-08你遇到的可能和我遇到的一样https://developers.weixin.qq.com/community/develop/doc/0006a47c6c0bd08907a721dc75bc00?jumpto=reply&parent_commentid=0008ea357fc8a8090ea7c8ed3518&commentid=000066a34bca084a04a7c92bc5b8
添加了小程序广告发布后为什么看不到添加了小程序广告审核通过发布后,为什么看不到广告,已经隔了一段时间了,而有的人却能看到,我是全量发布的。
2018-11-07这个好像两个小时以内,我上次也是这种问题。等了半个小时候就可以了。
为什么小程序发布上线后在小程序搜索不到结果?就是小程序发布上线后在小程序搜索不到结果 [图片]
2018-11-07我也遇到这样的问题,好奇葩的。是不是bug?工具开发版和体验版都能看,就是审核发布后看不了,有些人可以看有些不可以,难道还能拼人品的?你说由于该用户当前不适合浏览广告,什么情况的才算不适合浏览广告呢?啥提示都没有,出的错API上也没有。好奇葩
流量主显示“小程序广告组件通过审核”但是还是显示不出banner广告版本审核通过后发布,流量主显示开始审核广告组件,这时发布的版本广告组件不可用(banner和视频); 一段时间后,流量主显示“小程序广告组件通过审核”,重新进入游戏视频广告可以播放,但是部分android手机播放banner广告报错, errCode:0,errMsg:""no advertisement",但是IOS手机显示正常,请问这是什么原因,errCode:0代表什么?
2018-11-07我也遇到这样的问题,好奇葩的。是不是bug?也没有官方的人出来解答一下errCode:0,errMsg:""no advertisement"这算是什么情况?工具开发版和体验版都能看,就是审核发布后看不了,有些人可以看有些不可以,难道还能拼人品的?
banner广告位问题小程序增加了banner广告位后,遇到了一个奇怪的问题! 广告若不点击,全部广告位都显示,若点击几个广告位,全部广告位就一天内都不显示。 通过监听ad组件binderror,提示的错误信息:{errCode: 0, errMsg: "no advertisement"},打印相关错误如下: [图片] 查看文档的【错误码信息与解决方案表】,并不存在errCode为0的情况! 广告位的展示也遵循【小程序流量主应用规范】,想了解一下,这种问题触发是怎么解决! 小程序名称:RaveList AppID(小程序ID):wx4fb131e64d5716bf
2018-11-07同求问,这个问题貌似很普遍
流量主广告不显示线上版本不能显示出广告 开发工具和体验版都没有问题 在线等 [图片][图片]
2018-11-06https://developers.weixin.qq.com/community/develop/doc/0000ac39168d50641477b725c51c01
程序跳转提示需要配置声明- 当前 Bug 的表现(可附上截图) 开发工具中跳转: 点击小程序图片提示: “navigateToMinProgram接口需要配置声明,否则没有办法跳转” 在真机调试中点击则无反应。 - 预期表现 没有配置声明提示。 - 复现路径 - 提供一个最简复现 Demo
2018-11-06灰度测试.......
你们正在安卓设备上灰度2.4.0基础库吧?赶紧进来看看吧,出bug了安卓设备 并且 2.4.0基础库 并且打开调试模式 使用navigator组件无法跳转小程序,未见异常log(开发版、体验版、线上版表现一致),当关闭调试模式后可以正常跳转。 PS:代码中已经使用navigateToMiniProgramAppIdList的配置方式
2018-11-05同问
关于配置小程序名单如何配置?
2018-11-02Android底部虚拟按键如何隐藏?全屏手机浮动窗口的布局会被下面的虚拟按键往上顶,好恶心的安卓机。
关于小程序跳转什么时候支持不同主体的小程序跳转?上次预告不是说10月中下旬吗
2018-10-31