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"); +}