Update: WebSocket下MicroPython板卡支持管理板卡文件

This commit is contained in:
王立帮
2024-12-03 19:00:17 +08:00
parent 6dff4d2a98
commit c3212fecb1
6 changed files with 392 additions and 5 deletions

View File

@@ -50,6 +50,33 @@ class WebSocket {
}
}
async emitAsync(eventName, ...args) {
return new Promise((resolve, reject) => {
if (this.isConnected()) {
const callback = (...callbackArgs) => {
if (callbackArgs[0].error) {
reject(callbackArgs[0].error);
return;
}
resolve(...callbackArgs);
}
let emitStatus = {
finished: false
};
let status = this.#socket_.emit(eventName, ...args, (...callbackArgs) => {
if (emitStatus.finished) {
return;
}
emitStatus.finished = true;
callback(...callbackArgs);
});
this.#detectStatus_(emitStatus, callback);
} else {
reject('socket is not connected');
}
})
}
getSocket() {
return this.#socket_;
}