diff --git a/mail-vue/src/components/email-scroll/index.vue b/mail-vue/src/components/email-scroll/index.vue index 164ed05..2070388 100644 --- a/mail-vue/src/components/email-scroll/index.vue +++ b/mail-vue/src/components/email-scroll/index.vue @@ -289,7 +289,7 @@ function htmlToText(email) { function cleanSpace(text) { return text - .replace(/[\u200B-\u200F\uFEFF]/g, '') // 移除零宽空格、ZWNJ、ZWJ、LRM、RLM、BOM + .replace(/[\u200B-\u200F\uFEFF\u034F\u200B-\u200F\u00A0\u3000]/g, '') // 移除零宽空格 .replace(/\s+/g, ' ') // 多空白合并成一个空格 .trim(); } @@ -705,10 +705,7 @@ function loadData() { } &:hover { - box-shadow: inset 1px 0 0 rgb(218, 220, 224), - inset -1px 0 0 rgb(218, 220, 224), - 0 1px 2px 0 rgba(60, 64, 67, 0.3), - 0 1px 3px 1px rgba(60, 64, 67, 0.15); + background-color: #F2F6FC; z-index: 0; } diff --git a/mail-vue/src/components/tiny-editor/index.vue b/mail-vue/src/components/tiny-editor/index.vue index 223b9e2..2c06420 100644 --- a/mail-vue/src/components/tiny-editor/index.vue +++ b/mail-vue/src/components/tiny-editor/index.vue @@ -75,6 +75,7 @@ function initEditor() { mobile: { toolbar: 'fullscreen bold emoticons forecolor fontsize | alignleft aligncenter alignright alignjustify | outdent indent | bullist numlist | link image | table code preview ', }, + font_size_formats: '8pt 10pt 12pt 14pt 16pt 18pt 24pt 36pt', emoticons_search: false, language: 'zh_CN', language_url: '/tinymce/langs/zh_CN.js', diff --git a/mail-vue/src/layout/account/index.vue b/mail-vue/src/layout/account/index.vue index 2067386..b807016 100644 --- a/mail-vue/src/layout/account/index.vue +++ b/mail-vue/src/layout/account/index.vue @@ -127,7 +127,7 @@ const noLoading = ref(false) const loading = ref(false) const followLoading = ref(false); const verifyShow = ref(false) -let turnstileId = false +let turnstileId = null let verifyToken = '' const addForm = reactive({ email: '', diff --git a/mail-vue/src/layout/aside/index.vue b/mail-vue/src/layout/aside/index.vue index 1ce3c21..adbdf9c 100644 --- a/mail-vue/src/layout/aside/index.vue +++ b/mail-vue/src/layout/aside/index.vue @@ -69,8 +69,8 @@ const route = useRoute(); .title { margin: 15px 10px; - height: 50px; - border-radius: 6px; + height: 45px; + border-radius: 8px; display: flex; position: relative; font-size: 16px; diff --git a/mail-vue/src/store/user.js b/mail-vue/src/store/user.js index 4c82a86..af9fcec 100644 --- a/mail-vue/src/store/user.js +++ b/mail-vue/src/store/user.js @@ -4,8 +4,14 @@ import {loginUserInfo} from "@/request/my.js"; export const useUserStore = defineStore('user', { state: () => ({ user: {}, + refreshList: 0, }), actions: { + refreshUserList() { + loginUserInfo().then(user => { + this.refreshList ++ + }) + }, refreshUserInfo() { loginUserInfo().then(user => { this.user = user diff --git a/mail-vue/src/views/login/index.vue b/mail-vue/src/views/login/index.vue index 9f5f5e9..680836e 100644 --- a/mail-vue/src/views/login/index.vue +++ b/mail-vue/src/views/login/index.vue @@ -122,7 +122,7 @@ const registerLoading = ref(false) suffix.value = domainList[0] const verifyShow = ref(false) let verifyToken = '' -let turnstileId = '' +let turnstileId = null window.onTurnstileSuccess = (token) => { @@ -268,6 +268,7 @@ function submitRegister() { registerForm.password = '' registerForm.confirmPassword = '' registerLoading.value = false + turnstileId = null verifyToken = '' ElMessage({ message: '注册成功', diff --git a/mail-vue/src/views/role/index.vue b/mail-vue/src/views/role/index.vue index c41678f..de39a26 100644 --- a/mail-vue/src/views/role/index.vue +++ b/mail-vue/src/views/role/index.vue @@ -99,11 +99,13 @@ import {roleAdd, roleDelete, rolePermTree, roleRoleList, roleSet, roleSetDef} fr import {ElMessage, ElMessageBox} from "element-plus"; import loading from '@/components/loading/index.vue'; import {useRoleStore} from "@/store/role.js"; +import {useUserStore} from "@/store/user.js"; defineOptions({ name: 'role' }) +const userStore = useUserStore(); const roleStore = useRoleStore(); const roleFormShow = ref(false) const treeList = reactive([]) @@ -175,6 +177,7 @@ function delRole(role) { plain: true }) getRoleList() + userStore.refreshUserList() roleStore.refreshSelect() }) }); @@ -218,6 +221,13 @@ function setRole() { type: "success", plain: true }) + + const names = roles.value.map(role => role.name) + + if (!names.includes(params.name)) { + roleStore.refreshSelect() + } + roleFormShow.value = false getRoleList() }).finally(() => { diff --git a/mail-vue/src/views/sys-setting/index.vue b/mail-vue/src/views/sys-setting/index.vue index b82c9bd..c2e451d 100644 --- a/mail-vue/src/views/sys-setting/index.vue +++ b/mail-vue/src/views/sys-setting/index.vue @@ -297,7 +297,7 @@ - - + +