From 96a63ea11aa5d8a80892b07ab3c5b974a3d5d5dc Mon Sep 17 00:00:00 2001 From: PiEgg Date: Sun, 1 Aug 2021 15:44:59 +0800 Subject: [PATCH] :bug: Fix: bug of gallery db for plugin --- src/main/apis/gui/index.ts | 32 ++++++++++++++++++-------------- src/renderer/pages/Gallery.vue | 4 ++++ src/renderer/pages/Plugin.vue | 6 ++---- src/renderer/utils/mainMixin.ts | 1 + vue.config.js | 2 +- 5 files changed, 26 insertions(+), 19 deletions(-) diff --git a/src/main/apis/gui/index.ts b/src/main/apis/gui/index.ts index c32e06bf..b837e9ec 100644 --- a/src/main/apis/gui/index.ts +++ b/src/main/apis/gui/index.ts @@ -150,20 +150,24 @@ class GuiApi implements IGuiApi { return new Proxy(GalleryDB.getInstance(), { get (target, prop: keyof DBStore) { if (prop === 'removeById') { - return new Promise((resolve) => { - const guiApi = GuiApi.getInstance() - guiApi.showMessageBox({ - title: '警告', - message: '有插件正在试图删除一些相册文件,是否继续', - type: 'info', - buttons: ['Yes', 'No'] - }).then(res => { - if (res.result === 0) { - resolve(Reflect.get(target, prop)) - } else { - resolve(() => {}) - } - }) + return new Proxy(GalleryDB.getInstance().removeById, { + apply (target, ctx, args) { + return new Promise((resolve) => { + const guiApi = GuiApi.getInstance() + guiApi.showMessageBox({ + title: '警告', + message: '有插件正在试图删除一些相册图片,是否继续', + type: 'info', + buttons: ['Yes', 'No'] + }).then(res => { + if (res.result === 0) { + resolve(Reflect.apply(target, ctx, args)) + } else { + resolve(undefined) + } + }) + }) + } }) } return Reflect.get(target, prop) diff --git a/src/renderer/pages/Gallery.vue b/src/renderer/pages/Gallery.vue index 95ecbe87..98baba4a 100644 --- a/src/renderer/pages/Gallery.vue +++ b/src/renderer/pages/Gallery.vue @@ -155,9 +155,13 @@ export default class extends Vue { picBed: IPicBedType[] = [] @Watch('$route') handleRouteUpdate (to: any, from: any) { + console.log(to, from) if (from.name === 'gallery') { this.clearChoosedList() } + if (to.name === 'gallery') { + this.updateGallery() + } } async created () { ipcRenderer.on('updateGallery', (event: IpcRendererEvent) => { diff --git a/src/renderer/pages/Plugin.vue b/src/renderer/pages/Plugin.vue index 64828296..1bebc642 100644 --- a/src/renderer/pages/Plugin.vue +++ b/src/renderer/pages/Plugin.vue @@ -268,7 +268,8 @@ export default class extends Vue { _this.configName = plugin.config[i].fullName || plugin.config[i].name _this.dialogVisible = true _this.config = plugin.config[i].config - } + }, + enabled: plugin.enabled } menu.push(obj) } @@ -477,9 +478,6 @@ export default class extends Vue { goAwesomeList () { remote.shell.openExternal('https://github.com/PicGo/Awesome-PicGo') } - saveConfig (data: IObj) { - ipcRenderer.send('picgoSaveData', data) - } handleImportLocalPlugin () { ipcRenderer.send('importLocalPlugin') this.loading = true diff --git a/src/renderer/utils/mainMixin.ts b/src/renderer/utils/mainMixin.ts index 34e7b968..60b7b7d1 100644 --- a/src/renderer/utils/mainMixin.ts +++ b/src/renderer/utils/mainMixin.ts @@ -11,6 +11,7 @@ export default class extends Vue { [config]: value } } + console.log(PICGO_SAVE_CONFIG, config, value) ipcRenderer.send(PICGO_SAVE_CONFIG, config) } getConfig (key?: string): Promise { diff --git a/vue.config.js b/vue.config.js index 4ca5c671..0dfbe0c6 100644 --- a/vue.config.js +++ b/vue.config.js @@ -95,7 +95,7 @@ const config = { if (process.env.NODE_ENV === 'development') { config.configureWebpack = { - devtool: 'eval-source-map' + devtool: 'source-map' } // for dev main process hot reload config.pluginOptions.electronBuilder.mainProcessWatch = ['src/main/**/*']