Promise.race函数在模拟器环境下会报resolveAfterPromiseResolved

引擎版本3.7.3,Promise的race函数在模拟器环境下会报resolveAfterPromiseResolved,但是浏览器环境下不会报错。这个问题在2.4.11下也可重现。请问有人知道怎么解决吗?
截屏2023-12-05 23.57.24 截屏2023-12-05 23.58.59

解决办法:不要使用

算了,cocos原生平台的Promise相关的bug还挺多的,上次还遇到一个同步情况下调用reject也会抛异常的bug,在浏览器环境下就没问题。

贴一个网上的实现凑合用一下。
function race(iterable) { return new Promise((resolve, reject) => { for (const promise of iterable) { promise.then( (value) => { if (settlementOccurred) return; settlementOccurred = true; resolve(value); }, (err) => { if (settlementOccurred) return; settlementOccurred = true; reject(err); }); } let settlementOccurred = false; }); }