(ev: Event)
| 33 | // 监听 inject/content 发来的请求 eventFlag 的消息 |
| 34 | let ready = 0; |
| 35 | const fnEventFlagRequestHandler: EventListener = (ev: Event) => { |
| 36 | if (!(ev instanceof CustomEvent)) return; |
| 37 | |
| 38 | switch (ev.detail?.action) { |
| 39 | case "receivedEventFlag": |
| 40 | // 对方已收到 eventFlag |
| 41 | ready += 1; |
| 42 | if (ready >= readyCount) { |
| 43 | // 已收到两个环境的请求,移除监听 |
| 44 | pageRemoveEventListener(messageFlag, fnEventFlagRequestHandler); |
| 45 | } |
| 46 | break; |
| 47 | case "requestEventFlag": |
| 48 | // 广播通信 flag 给 inject/content |
| 49 | pageDispatchCustomEvent(messageFlag, { action: "broadcastEventFlag", eventFlag: eventFlag, extensionEnv }); |
| 50 | break; |
| 51 | } |
| 52 | }; |
| 53 | |
| 54 | // 设置事件,然后广播通信 flag 给 inject/content |
| 55 | pageAddEventListener(messageFlag, fnEventFlagRequestHandler); |
nothing calls this directly
no test coverage detected