From bacf6817ad3b9ae926bfa3b5995681308d1c8f13 Mon Sep 17 00:00:00 2001 From: xu_yanfeng Date: Mon, 9 Dec 2024 21:37:07 +0800 Subject: [PATCH] =?UTF-8?q?=E8=BF=BD=E5=8A=A0=E6=B5=8B=E8=AF=95server?= =?UTF-8?q?=E7=9A=84=E9=80=BB=E8=BE=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/views/devtools/connectBackground.ts | 21 ++++++--- cc-inspector/src/views/devtools/data.ts | 8 +++- cc-inspector/src/views/devtools/index.vue | 6 +-- .../src/views/devtools/test/server.ts | 46 +++++++++++++++++++ .../src/views/devtools/{ => test}/test.vue | 9 ++-- cc-inspector/yarn.lock | 22 ++++----- 6 files changed, 86 insertions(+), 26 deletions(-) create mode 100644 cc-inspector/src/views/devtools/test/server.ts rename cc-inspector/src/views/devtools/{ => test}/test.vue (84%) diff --git a/cc-inspector/src/views/devtools/connectBackground.ts b/cc-inspector/src/views/devtools/connectBackground.ts index 262ee85..7f9c2f2 100644 --- a/cc-inspector/src/views/devtools/connectBackground.ts +++ b/cc-inspector/src/views/devtools/connectBackground.ts @@ -1,19 +1,22 @@ +import CCP from "cc-plugin/src/ccp/entry-render"; import { Msg, Page, PluginEvent } from "../../core/types"; +import { TestClient, testServer, TestServer } from "./test/server"; export type BackgroundCallback = (data: PluginEvent, sender: any) => void; -class ConnectBackground { +class ConnectBackground implements TestClient { connect: chrome.runtime.Port | null = null; - constructor() { this._initConnect(); } private _initConnect() { - if (chrome && chrome.runtime) { + if (CCP.Adaptation.Env.isChromeRuntime) { this.connect = chrome.runtime.connect({ name: Page.Devtools }); this.connect.onDisconnect.addListener(() => { console.log(`%c[Connect-Dis]`, "color:red;") this.connect = null; }) + } else { + testServer.add(this); } } /** @@ -28,16 +31,20 @@ class ConnectBackground { }); } } - testMessage(data: PluginEvent) { + recv(event: PluginEvent): void { + this.doCallback(event); + } + doCallback(data: PluginEvent) { if (this.callback) { this.callback(data, null); } } sendMsgToContentScript(msg: Msg, data?: any) { - if (!chrome || !chrome.devtools) { - return; + if (CCP.Adaptation.Env.isChromeDevtools) { + this.postMessageToBackground(msg, data); + } else { + testServer.recv(msg, data); } - this.postMessageToBackground(msg, data); } postMessageToBackground(msg: Msg, data?: any) { if (this.connect) { diff --git a/cc-inspector/src/views/devtools/data.ts b/cc-inspector/src/views/devtools/data.ts index ecec723..ddc765f 100644 --- a/cc-inspector/src/views/devtools/data.ts +++ b/cc-inspector/src/views/devtools/data.ts @@ -259,6 +259,12 @@ export class Group { } export interface NodeInfoData { - uuid: string;// 节点的uuid + /** + * 节点的uuid + */ + uuid: string; + /** + * 组件数据 + */ group: Group[]; } diff --git a/cc-inspector/src/views/devtools/index.vue b/cc-inspector/src/views/devtools/index.vue index 17c4451..ed91b6b 100644 --- a/cc-inspector/src/views/devtools/index.vue +++ b/cc-inspector/src/views/devtools/index.vue @@ -23,7 +23,7 @@
- +