diff --git a/src/pages/core/setting/releases/index.vue b/src/pages/core/setting/releases/index.vue index 151eac97..6780b085 100644 --- a/src/pages/core/setting/releases/index.vue +++ b/src/pages/core/setting/releases/index.vue @@ -18,7 +18,7 @@ :type="updateNotify ? 'primary' : 'default'" size="mini" @click="d2adminUpdateNotifySet(!updateNotify)"> - {{updateNotify ? '关闭更新提醒' : '打开更新提醒'}} + {{updateNotify ? '关闭更新提醒 (当前:打开)' : '打开更新提醒 (当前:关闭)'}} diff --git a/src/store/modules/d2admin.js b/src/store/modules/d2admin.js index 83bb7aec..724210e4 100644 --- a/src/store/modules/d2admin.js +++ b/src/store/modules/d2admin.js @@ -49,13 +49,14 @@ export default { mutations: { /** * @class 通用工具 - * @description 将 state 中某一项存储到数据库 + * @description 将 state 中某一项存储到数据库 需要 uuid * @param {state} state vuex state + * @param {string} key key name */ d2adminVuex2DbByUuid (state, key) { - const setting = db.get(key).find({uuid: util.uuid()}) - if (setting.value()) { - setting.assign({value: state[key]}).write() + const row = db.get(key).find({uuid: util.uuid()}) + if (row.value()) { + row.assign({value: state[key]}).write() } else { db.get(key).push({ uuid: util.uuid(), @@ -63,6 +64,21 @@ export default { }).write() } }, + /** + * @class 通用工具 + * @description 将数据库中的某项数据拿到 vuex 需要 uuid + * @param {state} state vuex state + * @param {string} key key name + * @param {*} defaultValue default value + */ + d2adminDb2VuexByUuid (state, key, defaultValue) { + const row = db.get(key).find({uuid: util.uuid()}).value() + if (row) { + state[key] = row.value + } else { + state[key] = defaultValue + } + }, /** * @description 更新远端的版本信息 * @class releases @@ -267,23 +283,27 @@ export default { // 设置为列表第一个主题 state.themeActiveName = state.themeList[0].name } - // 设置 dom - document.body.className = `theme-${state.themeActiveName}` + // 将 vuex 中的主题应用到 dom + this.commit('d2adminTheme2dom') // 保存到数据库 this.commit('d2adminVuex2DbByUuid', 'themeActiveName') }, + /** + * @class themeActiveName + * @description 将 vuex 中的主题应用到 dom + * @param {state} state vuex state + */ + d2adminTheme2dom (state) { + document.body.className = `theme-${state.themeActiveName}` + }, /** * @class themeActiveName * @description 从数据库加载主题设置 * @param {state} state vuex state */ d2adminThemeLoad (state) { - const themeActiveName = db.get('themeActiveName').find({uuid: util.uuid()}).value() - if (themeActiveName) { - this.commit('d2adminThemeSet', themeActiveName.value) - } else { - this.commit('d2adminThemeSet', state.themeList[0].name) - } + this.commit('d2adminDb2VuexByUuid', 'themeActiveName', state.themeList[0].name) + this.commit('d2adminTheme2dom') } } }