- 当前 Bug 的表现(可附上截图)
我简化了一下我的代码:
我需要查询某个place两周(14天)内的状态,故把14个Promise放进了promises里,然后使用Promise.all来并发执行,(因为之前我的做法是串行执行14个查询,但这样太慢了,每次需要3秒左右)
exports.getStatus = async (placeId) => {
const date = new Date()
const promises = new Array()
for (let i = 0; i < 14; i++) {
promises.push(
db.collection('xxx').where({
placeId,
date: util.formatDateTime(date, 'yyyy-MM-dd')
}).get()
)
date.setDate(date.getDate() + 1)
}
return await Promise.all(promises)
}
console.time('get status')
let statusRes = await getStatus(placeId)
console.timeEnd('get status')
* 在开发者工具上,平均用时在300ms左右,可见确实是并发执行的
* 但在真机上,测出来还是需要3秒左右,我猜想它还是在顺序的执行
* 真机环境:
- 预期表现
在任何环境下,都应该是并发执行,所需时间应该在300ms左右
- 复现路径和提供一个最简复现 Demo(应该不需要了吧
在此先行谢过各位大佬!
微信小程序开发问题解答
微信小程序开发者回答:
补充一下:我没有开启es6转5的选项,使用的是微信小程序自带的async/await
请问有官方人员能核实一下情况嘛?谢谢!
本文网址:http://www.91bianli.com/weixinxiaochengxu/9395.html