SerialPort:connect 事件

可用性有限

此特性不是基線特性,因為它在一些最廣泛使用的瀏覽器中不起作用。

安全上下文: 此功能僅在安全上下文(HTTPS)中可用,且支援此功能的瀏覽器數量有限。

實驗性: 這是一項實驗性技術
在生產中使用此技術之前,請仔細檢查瀏覽器相容性表格

注意:此功能在 專用 Web Workers 中可用。

SerialPort 介面的 connect 事件在埠連線到裝置時觸發。

描述

更具體地說,在使用者在 Serial.requestPort() 呼叫後授予網站訪問埠的許可權後,當埠與裝置**邏輯連線**時,就會觸發 connect 事件。

  • 對於有線序列埠,這發生在埠物理連線到裝置時,例如透過 USB。
  • 對於無線序列埠(例如,藍牙 RFCOMM),這發生在埠與裝置建立一個或多個活動連線時(例如,透過藍牙 L2CAP 通道)。

事件冒泡

此事件會冒泡到返回此介面的 Serial 例項。event.target 屬性引用冒泡上來的 SerialPort 物件。

有關更多資訊,請參閱 事件冒泡

語法

在諸如 addEventListener() 之類的方法中使用事件名稱,或設定事件處理程式屬性。

js
addEventListener("connect", (event) => { })

onconnect = (event) => { }

事件型別

一個通用的 Event

示例

通知特定埠連線

Serial.requestPort() 方法返回一個 Promise,該 Promise 解析為一個由使用者選擇的 SerialPort 物件。

js
// Prompt user to choose a serial port
const port = await navigator.serial.requestPort();

port.addEventListener("connect", (event) => {
  // notify that the chosen port is connected
});

監聽任何新連線的埠

connect 事件會冒泡到 Serial 物件,您可以在此監聽任何新連線的埠。

js
navigator.serial.addEventListener("connect", (event) => {
  // notify that a new port is available
  // use `event.target` to refer to the newly-added port
});

規範

規範
Web Serial API
# dfn-connect
Web Serial API
# dom-serialport-onconnect

瀏覽器相容性

另見