Witam,
Mam problem z chrome serial API, a mianowicie próbuje stworzyć mechanizm który automatycznie rozłączy i ponownie połączy do porty COM. Mam taką funkcje która powinna teoretycznie po kliknięciu w przycisk connect powinna sprawdzić czy jest połączenie na postawie zmiennej serialId i gdy istnieje rozłącza port i ponownie się wykonie tyko już teraz próbuje się połączyć.
const connectSerial = (port,path)=>{
if(serialId){
chrome.serial.disconnect(serialId,()=>{
serialId = undefined;
connectSerial(port,path)
})
}else{
chrome.serial.connect(path,{bitrate: 9600},(e)=>{
serialId = e.connectionId;
sendMessage(port,{action:'connect',body: e})
})
}
}
Problemem jest to, że funkcja gdy się wykonuje to za pierwszym razem to jest wszystko ok, bo zmienna serialId jest pusta i wykonuje sie tylko else, ale gdy za drugim razem to już rzuca błędem i potem działa poprawnie tylko co drugi raz.