Skip to content

Commit 2247883

Browse files
committed
InjectRuntime 代码对齐 ContentRuntime
1 parent 027a460 commit 2247883

3 files changed

Lines changed: 9 additions & 11 deletions

File tree

src/content.ts

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -30,5 +30,6 @@ internalMessage.syncSend("pageLoad", null).then((resp) => {
3030
logger.logger().debug("content start");
3131
// 通过flag与inject建立通讯
3232
const contentMessage = new MessageContent(scriptFlag, true);
33-
new ContentRuntime(contentMessage, internalMessage).start(resp);
33+
const contentRuntime = new ContentRuntime(contentMessage, internalMessage);
34+
contentRuntime.start(resp);
3435
});

src/inject.ts

Lines changed: 3 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,6 @@ import LoggerCore from "./app/logger/core";
22
import MessageWriter from "./app/logger/message_writer";
33
import MessageContent from "./app/message/content";
44
import { type ScriptRunResource } from "./app/repo/scripts";
5-
import { assignExecutionToken } from "./runtime/content/gm_api";
65
import InjectRuntime from "./runtime/content/inject";
76

87
// 通过flag与content建立通讯,这个ScriptFlag是后端注入时候生成的
@@ -19,9 +18,8 @@ const logger = new LoggerCore({
1918
});
2019

2120

22-
message.setHandler("pageLoad", (_action, data: { scripts: ScriptRunResource[], executionToken?: string }) => {
23-
assignExecutionToken(`${data.executionToken || ""}`);
21+
message.setHandler("pageLoad", (_action, resp: { scripts: ScriptRunResource[], executionToken?: string }) => {
2422
logger.logger().debug("inject start");
25-
const runtime = new InjectRuntime(message, data.scripts, flag);
26-
runtime.start();
23+
const runtime = new InjectRuntime(message, flag);
24+
runtime.start(resp);
2725
});

src/runtime/content/inject.ts

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -3,10 +3,10 @@ import { type ScriptRunResource } from "@App/app/repo/scripts";
33
import ExecScript, { type ValueUpdateData } from "./exec_script";
44
import { addStyleSheet, type ScriptFunc } from "./utils";
55
import { onInjectPageLoaded } from "./external";
6+
import { assignExecutionToken } from "./gm_api";
67

78
// 注入脚本的沙盒环境
89
export default class InjectRuntime {
9-
scripts: ScriptRunResource[];
1010

1111
flag: string;
1212

@@ -16,16 +16,15 @@ export default class InjectRuntime {
1616

1717
constructor(
1818
message: MessageContent,
19-
scripts: ScriptRunResource[],
2019
flag: string
2120
) {
2221
this.message = message;
23-
this.scripts = scripts;
2422
this.flag = flag;
2523
}
2624

27-
start() {
28-
this.scripts.forEach((script) => {
25+
start(resp: { scripts: ScriptRunResource[], executionToken?: string }) {
26+
assignExecutionToken(`${resp.executionToken || ""}`);
27+
resp.scripts.forEach((script) => {
2928
// @ts-ignore
3029
const scriptFunc = window[script.flag];
3130
if (scriptFunc) {

0 commit comments

Comments
 (0)