|
|
|
@ -7,6 +7,7 @@ import RecycleModal from './RecycleModal.vue'
|
|
|
|
|
import SearchModal from './SearchModal.vue'
|
|
|
|
|
import ShortcutModal from './ShortcutModal.vue'
|
|
|
|
|
import UserSettings from './UserSettings.vue'
|
|
|
|
|
import { getMessageList } from '@/api/message/message'
|
|
|
|
|
import { getImgUrl } from '@/utils/urlUtils'
|
|
|
|
|
import { useUser } from '@/store/modules/user'
|
|
|
|
|
|
|
|
|
@ -45,6 +46,29 @@ export default defineComponent({
|
|
|
|
|
const router = useRouter()
|
|
|
|
|
const route = useRoute()
|
|
|
|
|
const routename = ref(route.meta.title)
|
|
|
|
|
// 图标列表mm
|
|
|
|
|
const iconList = ref([
|
|
|
|
|
{
|
|
|
|
|
icon: 'magnifying-1',
|
|
|
|
|
handle: searchHandler,
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
icon: 'shortcut-keys',
|
|
|
|
|
handle: shortcutHandler,
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
icon: 'suspicious-folder',
|
|
|
|
|
handle: recycleHandler,
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
icon: 'memo',
|
|
|
|
|
handle: quillHandler,
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
icon: 'nomessage',
|
|
|
|
|
handle: goMessage,
|
|
|
|
|
},
|
|
|
|
|
])
|
|
|
|
|
|
|
|
|
|
watch(
|
|
|
|
|
() => route.fullPath,
|
|
|
|
@ -53,6 +77,10 @@ export default defineComponent({
|
|
|
|
|
},
|
|
|
|
|
)
|
|
|
|
|
|
|
|
|
|
const handleDragOver = (event) => {
|
|
|
|
|
event.dataTransfer.dropEffect = 'move'
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
const dropdownSelect = (key) => {
|
|
|
|
|
router.push({ name: key })
|
|
|
|
|
}
|
|
|
|
@ -110,6 +138,18 @@ export default defineComponent({
|
|
|
|
|
router.push({ name: 'message-main' })
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
async function getMessage() {
|
|
|
|
|
const res = await getMessageList({ page: 1, size: 10, msgCategory: 1 })
|
|
|
|
|
if (res.data)
|
|
|
|
|
iconList.value[4].icon = 'hasmessage'
|
|
|
|
|
else
|
|
|
|
|
iconList.value[4].icon = 'nomessage'
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
setInterval(() => {
|
|
|
|
|
getMessage()
|
|
|
|
|
}, 5000)
|
|
|
|
|
|
|
|
|
|
const mousetrap = inject('mousetrap') as any
|
|
|
|
|
onMounted(() => {
|
|
|
|
|
mousetrap.bind('n r', quillHandler)
|
|
|
|
@ -118,30 +158,6 @@ export default defineComponent({
|
|
|
|
|
mousetrap.bind('m m', searchHandler)
|
|
|
|
|
})
|
|
|
|
|
|
|
|
|
|
// 图标列表mm
|
|
|
|
|
const iconList = [
|
|
|
|
|
{
|
|
|
|
|
icon: 'magnifying-1',
|
|
|
|
|
handle: searchHandler,
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
icon: 'shortcut-keys',
|
|
|
|
|
handle: shortcutHandler,
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
icon: 'suspicious-folder',
|
|
|
|
|
handle: recycleHandler,
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
icon: 'memo',
|
|
|
|
|
handle: quillHandler,
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
icon: 'newmessage',
|
|
|
|
|
handle: goMessage,
|
|
|
|
|
},
|
|
|
|
|
]
|
|
|
|
|
|
|
|
|
|
return {
|
|
|
|
|
...toRefs(state),
|
|
|
|
|
iconList,
|
|
|
|
@ -158,6 +174,7 @@ export default defineComponent({
|
|
|
|
|
recycleHandler,
|
|
|
|
|
useInfo,
|
|
|
|
|
getImgUrl,
|
|
|
|
|
getMessage,
|
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
})
|
|
|
|
@ -182,6 +199,7 @@ export default defineComponent({
|
|
|
|
|
v-for="item in iconList"
|
|
|
|
|
:key="item.icon"
|
|
|
|
|
class="layout-header-trigger layout-header-trigger-min"
|
|
|
|
|
@dragover.prevent="handleDragOver"
|
|
|
|
|
>
|
|
|
|
|
<div class="back" @click="item.handle">
|
|
|
|
|
<SvgIcon :name="item.icon" size="18" />
|
|
|
|
|