Skip to content
This repository was archived by the owner on May 13, 2025. It is now read-only.

Commit e1a890a

Browse files
committed
处理gm log和新建脚本问题
1 parent 79e8b88 commit e1a890a

File tree

5 files changed

+35
-13
lines changed

5 files changed

+35
-13
lines changed

src/app/logger/message_writer.ts

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,13 +5,16 @@ import { MessageSend } from "@Packages/message/server";
55
export default class MessageWriter implements Writer {
66
send: MessageSend;
77

8-
constructor(connect: MessageSend) {
8+
constructor(
9+
connect: MessageSend,
10+
private action: string = "logger"
11+
) {
912
this.send = connect;
1013
}
1114

1215
write(level: LogLevel, message: string, label: LogLabel): void {
1316
this.send.sendMessage({
14-
action: "logger",
17+
action: this.action,
1518
data: {
1619
id: 0,
1720
level,

src/app/service/content/content.ts

Lines changed: 13 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,5 @@
1+
import LoggerCore from "@App/app/logger/core";
2+
import Logger from "@App/app/logger/logger";
13
import { ScriptRunResouce } from "@App/app/repo/scripts";
24
import { Client, sendMessage } from "@Packages/message/client";
35
import { CustomEventMessage } from "@Packages/message/custom_event_message";
@@ -83,7 +85,17 @@ export default class ContentRuntime {
8385
case "GM_log":
8486
// 拦截GM_log,打印到控制台
8587
// 由于某些页面会处理掉console.log,所以丢到这里来打印
86-
console.log(...data.params);
88+
switch (data.params.length) {
89+
case 1:
90+
console.log(data.params[0]);
91+
break;
92+
case 2:
93+
console.log("[" + data.params[1] + "]", data.params[0]);
94+
break;
95+
case 3:
96+
console.log("[" + data.params[1] + "]", data.params[0], data.params[2]);
97+
break;
98+
}
8799
break;
88100
}
89101
return false;

src/pages/components/CodeEditor/index.tsx

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,6 @@ const CodeEditor: React.ForwardRefRenderFunction<{ editor: editor.IStandaloneCod
1717
{ id, className, code, diffCode, editable },
1818
ref
1919
) => {
20-
const settings = useAppSelector((state) => state.setting);
2120
const [monacoEditor, setEditor] = useState<editor.IStandaloneCodeEditor>();
2221
const [enableEslint, setEnableEslint] = useState(false);
2322
const [eslintConfig, setEslintConfig] = useState("");
@@ -40,9 +39,11 @@ const CodeEditor: React.ForwardRefRenderFunction<{ editor: editor.IStandaloneCod
4039
}, []);
4140

4241
useEffect(() => {
42+
console.log("1231", code);
4343
if (diffCode === undefined || code === undefined || !div.current) {
4444
return () => {};
4545
}
46+
console.log("1232");
4647
let edit: editor.IStandaloneDiffEditor | editor.IStandaloneCodeEditor;
4748
const inlineDiv = document.getElementById(id) as HTMLDivElement;
4849
// @ts-ignore

src/pages/options/main.tsx

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,7 @@ import migrate from "@App/app/migrate.ts";
1818
migrate();
1919

2020
registerEditor();
21+
2122
// 初始化日志组件
2223
const loggerCore = new LoggerCore({
2324
writer: new DBWriter(new LoggerDAO()),

src/pages/options/routes/script/ScriptEditor.tsx

Lines changed: 14 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -32,11 +32,12 @@ type HotKey = {
3232

3333
const Editor: React.FC<{
3434
id: string;
35-
script: ScriptAndCode;
35+
script: Script;
36+
code: string;
3637
hotKeys: HotKey[];
3738
callbackEditor: (e: editor.IStandaloneCodeEditor) => void;
3839
onChange: (code: string) => void;
39-
}> = ({ id, script, hotKeys, callbackEditor, onChange }) => {
40+
}> = ({ id, script, code, hotKeys, callbackEditor, onChange }) => {
4041
const [node, setNode] = useState<{ editor: editor.IStandaloneCodeEditor }>();
4142
const ref = useCallback<(node: { editor: editor.IStandaloneCodeEditor }) => void>(
4243
(inlineNode) => {
@@ -77,7 +78,7 @@ const Editor: React.FC<{
7778
};
7879
}, [node?.editor]);
7980

80-
return <CodeEditor key={id} id={id} ref={ref} code={script.code} diffCode="" editable />;
81+
return <CodeEditor key={id} id={id} ref={ref} code={code} diffCode="" editable />;
8182
};
8283

8384
const WarpEditor = React.memo(Editor, (prev, next) => {
@@ -154,7 +155,8 @@ function ScriptEditor() {
154155
const [visible, setVisible] = useState<{ [key: string]: boolean }>({});
155156
const [editors, setEditors] = useState<
156157
{
157-
script: ScriptAndCode;
158+
script: Script;
159+
code: string;
158160
active: boolean;
159161
hotKeys: HotKey[];
160162
editor?: editor.IStandaloneCodeEditor;
@@ -218,7 +220,7 @@ function ScriptEditor() {
218220
setEditors((prev) => {
219221
for (let i = 0; i < prev.length; i += 1) {
220222
if (prev[i].script.uuid === newScript.uuid) {
221-
prev[i].script.code = prepareScript.scriptCode;
223+
prev[i].code = e.getValue();
222224
prev[i].isChanged = false;
223225
prev[i].script.name = newScript.name;
224226
break;
@@ -310,7 +312,7 @@ function ScriptEditor() {
310312
});
311313
})
312314
.catch((err) => {
313-
LoggerCore.getLogger(Logger.E(err)).debug("debug script error");
315+
LoggerCore.logger(Logger.E(err)).debug("debug script error");
314316
Message.error({
315317
id: "debug_script",
316318
content: `构建失败: ${err}`,
@@ -398,7 +400,8 @@ function ScriptEditor() {
398400
});
399401
}
400402
prev.push({
401-
script: Object.assign(scripts[i], code),
403+
script: scripts[i],
404+
code: code?.code || "",
402405
active: true,
403406
hotKeys,
404407
isChanged: false,
@@ -725,7 +728,8 @@ function ScriptEditor() {
725728
return;
726729
}
727730
editors.push({
728-
script: Object.assign(script, code),
731+
script,
732+
code: code.code,
729733
active: true,
730734
hotKeys,
731735
isChanged: false,
@@ -874,6 +878,7 @@ function ScriptEditor() {
874878
key={`e_${item.script.uuid}`}
875879
id={`e_${item.script.uuid}`}
876880
script={item.script}
881+
code={item.code}
877882
hotKeys={item.hotKeys}
878883
callbackEditor={(e) => {
879884
setEditors((prev) => {
@@ -886,7 +891,7 @@ function ScriptEditor() {
886891
});
887892
}}
888893
onChange={(code) => {
889-
const isChanged = !(item.script.code === code);
894+
const isChanged = !(item.code === code);
890895
if (isChanged !== item.isChanged) {
891896
setEditors((prev) => {
892897
prev.forEach((v) => {

0 commit comments

Comments
 (0)