From 1d63940749505c0a1cdb2049f3714cf229759346 Mon Sep 17 00:00:00 2001 From: fofolee Date: Sat, 9 Apr 2022 01:21:39 +0800 Subject: [PATCH] =?UTF-8?q?=E6=95=B0=E6=8D=AE=E5=AD=98=E5=82=A8=E7=BB=93?= =?UTF-8?q?=E6=9E=84=E8=B0=83=E6=95=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/boot/global.js | 11 +++-------- src/components/CommandEditor.vue | 21 +++++---------------- src/components/MonocaEditor.vue | 11 ++++++----- src/pages/CommandPage.vue | 7 +------ src/pages/ConfigurationPage.vue | 12 ++++++++++-- 5 files changed, 25 insertions(+), 37 deletions(-) diff --git a/src/boot/global.js b/src/boot/global.js index 05438c2..d934851 100644 --- a/src/boot/global.js +++ b/src/boot/global.js @@ -10,24 +10,19 @@ let defaultProfile = { primaryColor: "#009688", defaultPrimaryColor: "#009688", backgroundImg: null, + codeHistory: {} } let userProfile = UTOOLS.getDB( UTOOLS.DBPRE.CFG + "preferences" ); Object.assign(defaultProfile, userProfile) -utools.onPluginOut(() => { - UTOOLS.putDB( - defaultProfile, - UTOOLS.DBPRE.CFG + "preferences" - ); -}); // "async" is optional; // more info on params: https://v2.quasar.dev/quasar-cli/boot-files -export default boot(async ({ +export default boot(async({ app }) => { app.config.globalProperties.$utools = UTOOLS app.config.globalProperties.$programmings = programmings app.config.globalProperties.$profile = defaultProfile -}) +}) \ No newline at end of file diff --git a/src/components/CommandEditor.vue b/src/components/CommandEditor.vue index d4b0314..0d04d6f 100644 --- a/src/components/CommandEditor.vue +++ b/src/components/CommandEditor.vue @@ -145,10 +145,7 @@ }" /> - + @@ -214,7 +211,8 @@ export default { this.bindKeys(); let quickCommandInfo = this.action.type === "run" - ? this.$utools.getDB(this.$utools.DBPRE.CFG + "codeHistory") + ? this.$utools.getDB(this.$utools.DBPRE.CFG + "preferences") + ?.codeHistory : this.action.data; _.merge(this.quickcommandInfo, quickCommandInfo); // monoca 相关 @@ -224,16 +222,8 @@ export default { if (this.quickcommandInfo.tags?.includes("默认") && !utools.isDev()) { this.canCommandSave = false; } - // 只有 runCode 时才保存记录 - if (this.action.type !== "run") return; - utools.onPluginOut(() => { - this.quickcommandInfo.cmd = this.$refs.editor.getEditorValue(); - // 保存本次编辑记录 - this.$utools.putDB( - _.cloneDeep(this.quickcommandInfo), - this.$utools.DBPRE.CFG + "codeHistory" - ); - }); + if (this.action.type === "run") + this.$profile.codeHistory = this.quickcommandInfo; }, // 绑定快捷键 bindKeys() { @@ -362,7 +352,6 @@ export default { }, // 运行 runCurrentCommand() { - this.quickcommandInfo.cmd = this.$refs.editor?.getEditorValue(); this.quickcommandInfo.output = this.$refs.menu?.currentCommand.output; this.$refs.result.runCurrentCommand(this.quickcommandInfo); }, diff --git a/src/components/MonocaEditor.vue b/src/components/MonocaEditor.vue index a018385..1e8e014 100644 --- a/src/components/MonocaEditor.vue +++ b/src/components/MonocaEditor.vue @@ -34,11 +34,6 @@ export default { return this.$q.dark.isActive; }, }, - watch: { - isDark() { - this.setEditorTheme(); - }, - }, methods: { initEditor() { let monacoEditorPreferences = { @@ -58,6 +53,7 @@ export default { this.loadTypes(); this.registerLanguage(); this.setEditorTheme(); + this.listenEditroValue(); }, loadTypes() { monaco.languages.typescript.javascriptDefaults.setDiagnosticsOptions({ @@ -181,6 +177,11 @@ export default { destoryEditor() { this.rawEditor.dispose(); }, + listenEditroValue() { + this.rawEditor.onDidChangeModelContent(() => { + this.$parent.quickcommandInfo.cmd = this.getEditorValue(); + }); + }, }, }; diff --git a/src/pages/CommandPage.vue b/src/pages/CommandPage.vue index 248a256..b4b4333 100644 --- a/src/pages/CommandPage.vue +++ b/src/pages/CommandPage.vue @@ -15,6 +15,7 @@ export default { type: "fromUtools", data: {}, }, + featureCode: this.$route.path.slice(1), }; }, mounted() { @@ -22,16 +23,10 @@ export default { this.runCurrentCommand(); }, computed: { - featureCode() { - return this.$route.params.type + "_" + this.$route.params.uid; - }, currentCommand() { return this.$utools.whole.db.get("qc_" + this.featureCode).data; }, }, - beforeRouteUpdate(to, from, next) { - this.runCurrentCommand(); - }, methods: { runCurrentCommand() { this.$refs.result.runCurrentCommand(this.currentCommand); diff --git a/src/pages/ConfigurationPage.vue b/src/pages/ConfigurationPage.vue index 96aecfd..05b07f8 100644 --- a/src/pages/ConfigurationPage.vue +++ b/src/pages/ConfigurationPage.vue @@ -191,17 +191,25 @@