From 41484991abf2b0b606085ed7a1d6a2d345293740 Mon Sep 17 00:00:00 2001 From: fofolee Date: Sat, 28 Dec 2024 12:39:22 +0800 Subject: [PATCH] =?UTF-8?q?generateCode=E4=BD=9C=E4=B8=BA=E6=A8=A1?= =?UTF-8?q?=E5=9D=97=E4=BB=A3=E7=A0=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../editor/composer/CommandComposer.vue | 28 ++++--------------- src/js/composer/generateCode.js | 21 ++++++++++++++ 2 files changed, 26 insertions(+), 23 deletions(-) create mode 100644 src/js/composer/generateCode.js diff --git a/src/components/editor/composer/CommandComposer.vue b/src/components/editor/composer/CommandComposer.vue index d87a4a4..8b780a6 100644 --- a/src/components/editor/composer/CommandComposer.vue +++ b/src/components/editor/composer/CommandComposer.vue @@ -22,7 +22,7 @@ 命令流程 - + @@ -48,7 +48,7 @@ import ComposerList from "./ComposerList.vue"; import ComposerFlow from "./ComposerFlow.vue"; import CodePreview from "./CodePreview.vue"; import { commandCategories } from "js/composer/composerConfig"; - +import { generateCode } from "js/composer/generateCode"; // 从commandCategories中提取所有命令 const availableCommands = commandCategories.reduce((commands, category) => { return commands.concat( @@ -116,29 +116,11 @@ export default defineComponent({ value: action.value || action.cmd, }); }, - generateCode() { - let code = []; - - this.commandFlow.forEach((cmd) => { - let line = ""; - - if (cmd.outputVariable) { - line += `let ${cmd.outputVariable} = `; - } - - if (cmd.value === "ubrowser") { - line += cmd.argv; - } else { - line += `${cmd.value}(${cmd.argv})`; - } - - code.push(line); - }); - - return code.join("\n"); + generateFlowCode() { + return generateCode(this.commandFlow); }, handleComposer(type) { - const code = this.generateCode(); + const code = this.generateFlowCode(); this.$emit("use-composer", { type, code }); if (type !== "run") this.$emit("update:modelValue", false); }, diff --git a/src/js/composer/generateCode.js b/src/js/composer/generateCode.js new file mode 100644 index 0000000..53da9a6 --- /dev/null +++ b/src/js/composer/generateCode.js @@ -0,0 +1,21 @@ +export function generateCode(commandFlow) { + let code = []; + + commandFlow.forEach((cmd) => { + let line = ""; + + if (cmd.outputVariable) { + line += `let ${cmd.outputVariable} = `; + } + + if (cmd.value === "ubrowser") { + line += cmd.argv; + } else { + line += `${cmd.value}(${cmd.argv})`; + } + + code.push(line); + }); + + return code.join("\n"); +}