代碼:
/**
* 等待某個變量準備就緒
* @param { () => { } } func
*/
async function waitForReady(func) {
return new Promise((resolve, reject) => {
let checkCount = 0;
let t = setInterval(() => {
if (func() || checkCount > 100) {
clearInterval(t);
resolve();
}
checkCount++;
}, 100);
});
}
如何使用:
let xxx;
await waitForReady(() => xxx);