From 55945a1a2ca685330b1531d1ad7aee6b2e1d6d7a Mon Sep 17 00:00:00 2001 From: wanglin2 <1013335014@qq.com> Date: Mon, 24 Jul 2023 10:25:02 +0800 Subject: [PATCH] =?UTF-8?q?Demo=EF=BC=9A=E6=94=AF=E6=8C=81=E6=A0=B9?= =?UTF-8?q?=E6=8D=AE=E4=B8=BB=E9=A2=98=E8=87=AA=E5=8A=A8=E5=88=87=E6=8D=A2?= =?UTF-8?q?=E4=B8=BA=E6=9A=97=E9=BB=91=E6=A8=A1=E5=BC=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- simple-mind-map/src/constants/constant.js | 32 +++++++++++++++++++++++ web/src/pages/Edit/components/Edit.vue | 2 +- web/src/pages/Edit/components/Theme.vue | 17 +++++++++++- 3 files changed, 49 insertions(+), 2 deletions(-) diff --git a/simple-mind-map/src/constants/constant.js b/simple-mind-map/src/constants/constant.js index 5bf95bad..cf2ce546 100644 --- a/simple-mind-map/src/constants/constant.js +++ b/simple-mind-map/src/constants/constant.js @@ -27,130 +27,162 @@ export const themeList = [ { name: '默认', value: 'default', + dark: false }, { name: '暗色2', value: 'dark2', + dark: true }, { name: '天清绿', value: 'skyGreen', + dark: false }, { name: '脑图经典2', value: 'classic2', + dark: false }, { name: '脑图经典3', value: 'classic3', + dark: false }, { name: '经典绿', value: 'classicGreen', + dark: false }, { name: '经典蓝', value: 'classicBlue', + dark: false }, { name: '天空蓝', value: 'blueSky', + dark: false }, { name: '脑残粉', value: 'brainImpairedPink', + dark: false }, { name: '暗色', value: 'dark', + dark: true }, { name: '泥土黄', value: 'earthYellow', + dark: false }, { name: '清新绿', value: 'freshGreen', + dark: false }, { name: '清新红', value: 'freshRed', + dark: false }, { name: '浪漫紫', value: 'romanticPurple', + dark: false }, { name: '粉红葡萄', value: 'pinkGrape', + dark: false }, { name: '薄荷', value: 'mint', + dark: false }, { name: '金色vip', value: 'gold', + dark: false }, { name: '活力橙', value: 'vitalityOrange', + dark: false }, { name: '绿叶', value: 'greenLeaf', + dark: false }, { name: '脑图经典', value: 'classic', + dark: true }, { name: '脑图经典4', value: 'classic4', + dark: false }, { name: '小黄人', value: 'minions', + dark: false }, { name: '简约黑', value: 'simpleBlack', + dark: true }, { name: '课程绿', value: 'courseGreen', + dark: false }, { name: '咖啡', value: 'coffee', + dark: false }, { name: '红色精神', value: 'redSpirit', + dark: false }, { name: '黑色幽默', value: 'blackHumour', + dark: true }, { name: '深夜办公室', value: 'lateNightOffice', + dark: true }, { name: '黑金', value: 'blackGold', + dark: true }, { name: '牛油果', value: 'avocado', + dark: false }, { name: '秋天', value: 'autumn', + dark: false }, { name: '橙汁', value: 'orangeJuice', + dark: true } ] diff --git a/web/src/pages/Edit/components/Edit.vue b/web/src/pages/Edit/components/Edit.vue index dea28a8b..94f3ea52 100644 --- a/web/src/pages/Edit/components/Edit.vue +++ b/web/src/pages/Edit/components/Edit.vue @@ -7,7 +7,7 @@ - + diff --git a/web/src/pages/Edit/components/Theme.vue b/web/src/pages/Edit/components/Theme.vue index 6b2ed70d..b294e411 100644 --- a/web/src/pages/Edit/components/Theme.vue +++ b/web/src/pages/Edit/components/Theme.vue @@ -21,7 +21,7 @@ import Sidebar from './Sidebar' import { themeList } from 'simple-mind-map/src/constants/constant' import { storeConfig } from '@/api' -import { mapState } from 'vuex' +import { mapState, mapMutations } from 'vuex' import { themeMap } from '@/config/constant.js' import customThemeList from '@/customThemes' @@ -54,13 +54,20 @@ export default { activeSidebar(val) { if (val === 'theme') { this.theme = this.mindMap.getTheme() + this.handleDark() this.$refs.sidebar.show = true } else { this.$refs.sidebar.show = false } } }, + created () { + this.theme = this.mindMap.getTheme() + this.handleDark() + }, methods: { + ...mapMutations(['setIsDark']), + /** * @Author: 王林 * @Date: 2021-06-24 23:04:38 @@ -68,6 +75,7 @@ export default { */ useTheme(theme) { this.theme = theme.value + this.handleDark() this.mindMap.setTheme(theme.value) storeConfig({ theme: { @@ -75,6 +83,13 @@ export default { config: this.mindMap.getCustomThemeConfig() } }) + }, + + handleDark() { + let target = themeList.find((item) => { + return item.value === this.theme + }) + this.setIsDark(target.dark) } } }