From 20edbbb796f386465c0e703be0f1b602c02a5470 Mon Sep 17 00:00:00 2001 From: zhangzengfei <zhangzengfei@iotlink.com> Date: 星期二, 04 八月 2020 16:25:52 +0800 Subject: [PATCH] dekstop: add reset min frame on desktop icon repeatedly click --- src/pages/desktop/index/store/modules/desktop.js | 10 ++++++++-- src/pages/desktop/index/components/ToolsEntry.vue | 14 ++++++++------ 2 files changed, 16 insertions(+), 8 deletions(-) diff --git a/src/pages/desktop/index/components/ToolsEntry.vue b/src/pages/desktop/index/components/ToolsEntry.vue index cc44556..164f9c4 100644 --- a/src/pages/desktop/index/components/ToolsEntry.vue +++ b/src/pages/desktop/index/components/ToolsEntry.vue @@ -29,21 +29,23 @@ } }, methods: { - dockClick(dock) { if (dock.type === '1') { window.open(dock.url); } else if (dock.type === '2') { - debugger - this.$store.dispatch('desktop/addFrame', { + let ids = this.$store.getters["desktop/frames"].map(item => item.id); + if (ids.indexOf(dock.id) > -1) { + this.$store.commit('desktop/resetMinFrame', dock.id); + this.resetDockItem(); + return; + } + + let ret = this.$store.dispatch('desktop/addFrame', { id: dock.id, icon: dock.src, title: dock.name, url: dock.url }); - } else if (dock.type === '3') { - this.$store.commit('desktop/resetMinFrame', dock.id); - this.resetDockItem(); } }, resetDockItem() { diff --git a/src/pages/desktop/index/store/modules/desktop.js b/src/pages/desktop/index/store/modules/desktop.js index 1949bcb..9b29087 100644 --- a/src/pages/desktop/index/store/modules/desktop.js +++ b/src/pages/desktop/index/store/modules/desktop.js @@ -25,7 +25,11 @@ }; // getters -const getters = {}; +const getters = { + frames(state) { + return state.frames; + } +}; // actions const actions = { @@ -73,7 +77,7 @@ addFrame: (state, dframe) => { let ids = state.frames.map(item => item.id); if (ids.indexOf(dframe.id) > -1) { - return; + return false; } let order = state.framesOrder + 1; @@ -95,6 +99,8 @@ state.framesOrder = order; state.framesOffset = offset; state.frames.push(dframe); + + return true; }, addMinDock: (state, dock) => { let ids = state.minDocks.map(item => item.id); -- Gitblit v1.8.0