- 如何让所有异步请求完成后再调用wx.hideLoading()?
需求,用户点击按钮后查询数据,但是数据是异步请求,查询数目也较多,等待时间较长,所以想要在查询时间通过 wx.showLoading()提示用户,等完成后在通过wx.hideLoading()来关闭窗口,但是因为是异步,所以很多情况是已经wx.hideLoading(),但数据还没加载完成。请问各位大佬如何解决。 db.collection('xxx').orderBy('aa','desc').skip(page).limit(rows).get() then(res => { wx.showLoading({ title: '查询中...', mask:true }) ......//数据处理 wx.hideLoading() })
2023-05-31 - 在app.js中定义的分享函数,在其他页面调用传参的时候为什么不能成功传参?
在app.js定义的函数如下,目的是通过不同页面的不同参数实现不同的分享标题。 shareApp(t,p) { //t为标题,p为页面路径 console.log(t,p) const promise = new Promise(resolve => { setTimeout(() => { resolve({ title: t }) }, 2000) }) return { title: t, path: p, promise } }, 在其他页面的js调用代码如下 const app = getApp() const shareTitle = '自定义标题' const sharePath = '/pages/index/index' Page({ data: { showList : [] }, onShareAppMessage(){ app.shareApp(shareTitle,sharePath) } }) 现在点击右上角三个点按钮可以调出分享按钮,但是无法实现自定义标题(分享标题以小程序名称的形式出现),求教各位大佬什么原因。 另外,是否有更优雅的解决方案实现不同页面不同分享标题(不想每个页面都写这么多代码,想通过调用app.js内函数传参的方式来实现)
2023-05-22 - 为什么从函数return的数组可以console.log,但是却无法遍历使用?
我写了一个名为 getRect的函数,构造并 return 一个数组。 getRect:function() { let positions = [] for (let i = 0; i < dataArr.length; i++) { let numPosition = wx.createSelectorQuery() let select = numPosition.select('#p'+dataArr[i].num) select.boundingClientRect(function (res) { positions.push([res.left+(res.width/2),res.top+(res.height/2)]) // positions[i] = [[res.left+(res.width/2),res.top+(res.height/2)]] }) numPosition.exec() } return positions }, 该数组可以被打印,但是无法遍历和使用。typeof类型为object,长度显示却为0 onLoad: function() { let pos = this.getRect() console.log(pos) //正常打印 console.log(typeof(pos)) //object console.log(pos.length) //为0 } [图片]
2023-03-24 - 如何使用两个摇杆,分别控制角色的移动和朝向?
[图片] 想做一款这样的上帝视角设计游戏。 需要一个摇杆控制角色移动(但是不改变朝向),另一个摇杆控制射击方向并射击。请问大佬们,有没有方法可以实现 补充:我尝试过手指滑动屏幕的方法来使角色朝向跟踪手指。但是实际体验不好。反馈也并不灵敏。
2022-06-16 - 为什么当克隆体自己碰到全部边缘时“删除此克隆体”无效?
我设置了三个精灵用来模拟发射子弹(bullet)、扔炸弹(bomb)、发射导弹(missile) [图片] 三个精灵是同样的设置,既碰到敌人或者边缘就删除克隆体。现在炸弹和导弹可以实现。只有子弹(bullet)越打越多,哪怕把敌人打死也不删除自己的克隆体。 跪求大佬解答。 [图片]
2022-06-03