Spec-Zone.ru › Web APIs

SerialPort: свойство connected

Ограниченная доступность

Эта функция не относится к Baseline, поскольку она не работает в некоторых из наиболее широко используемых браузеров.

  • Узнать больше
  • Полная совместимость
  • Отправить отзыв

Безопасный контекст: Эта функция доступна только в безопасных контекстах (HTTPS) в некоторых или всех поддерживающих браузерах.

Экспериментальная функция: Это экспериментальная технология
Перед использованием в продакшене внимательно проверьте таблицу совместимости браузеров.

Примечание: Эта функция доступна в посвященных веб-воркерах.

Чтение-только свойство connected интерфейса SerialPort возвращает логическое значение, указывающее, подключен ли порт к устройству.

Описание

Когда беспроводное устройство выходит из зоны действия хоста, любой беспроводной последовательный порт, открытый веб-приложением, автоматически закрывается, хотя он остается логически подключенным. В таких случаях веб-приложение может попытаться повторно открыть порт с помощью SerialPort.open().

Однако, если беспроводное устройство было отключено намеренно (например, если пользователь отключил его с помощью панели управления операционной системой), веб-приложение должно воздержаться от повторного открытия порта, чтобы предотвратить повторное подключение к беспроводному устройству.

Следующий фрагмент кода показывает, как можно использовать свойство connected для различения этих двух случаев:

const ports = await navigator.serial.getPorts();
for (const port of ports) {
  if (port.connected) {
    // The port is logically connected
    // automatically try to reopen the port
    await port.open({ baudRate: 9600 });
  } else {
    // The port is not logically connected; at this point you could
    // prompt the user to make sure the Bluetooth device is available, and
    // Show a "connect" button to allow them to try opening the port if desired
  }
}

Значение

Логическое значение — true , если порт логически подключен, и false , если нет.

Примеры

Вывод информации о подключенном порте

Следующий фрагмент кода вызывает Serial.requestPort() при нажатии пользователем <button>, запрашивая выбор последовательного порта для подключения, затем выводит сообщение в консоль, сообщая о статусе подключения:

requestPortButton.addEventListener("click", async () => {
  const port = await navigator.serial.requestPort();
  console.log(`Requested serial port. Connected: ${port.connected}`);
});

Вывод статуса подключения при подключении и отключении

Вы можете использовать следующий фрагмент кода для вывода статуса подключения при срабатывании событий connect и disconnect:

navigator.serial.addEventListener("connect", ({ target: port }) => {
  console.log(`Connect event fired. Connected: ${port.connected}`);
});

navigator.serial.addEventListener("disconnect", ({ target: port }) => {
  console.log(`Disconnect event fired. Connected: ${port.connected}`);
});

Спецификации

Спецификация
Web Serial API
# dom-serialport-connected

Совместимость браузеров

Рабочий стол Мобильные устройства
Chrome Edge Firefox Opera Safari Chrome Android Firefox для Android Opera Android Safari на iOS Samsung Internet WebView Android
connected 130 130 Нет 115 Нет Нет Нет Нет Нет Нет Нет

© 2005–2024 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/API/SerialPort/connected

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API