refactor: 同步通知公告弹窗样式与编辑器高度设置
This commit is contained in:
@@ -168,11 +168,31 @@
|
|||||||
<!-- 通知公告表单弹窗 -->
|
<!-- 通知公告表单弹窗 -->
|
||||||
<el-dialog
|
<el-dialog
|
||||||
v-model="dialog.visible"
|
v-model="dialog.visible"
|
||||||
:title="dialog.title"
|
:show-close="false"
|
||||||
top="3vh"
|
:fullscreen="dialog.fullscreen"
|
||||||
width="80%"
|
top="6vh"
|
||||||
|
width="70%"
|
||||||
|
custom-class="notice-dialog"
|
||||||
@close="handleCloseDialog"
|
@close="handleCloseDialog"
|
||||||
>
|
>
|
||||||
|
<template #header>
|
||||||
|
<div class="flex-x-between">
|
||||||
|
<span>{{ dialog.title }}</span>
|
||||||
|
<div class="dialog-toolbar">
|
||||||
|
<el-button circle @click="toggleDialogFullscreen">
|
||||||
|
<template #icon>
|
||||||
|
<FullScreen v-if="!dialog.fullscreen" />
|
||||||
|
<CopyDocument v-else />
|
||||||
|
</template>
|
||||||
|
</el-button>
|
||||||
|
<el-button circle @click="handleCloseDialog">
|
||||||
|
<template #icon>
|
||||||
|
<Close />
|
||||||
|
</template>
|
||||||
|
</el-button>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
<el-form ref="dataFormRef" :model="formData" :rules="rules" label-width="100px">
|
<el-form ref="dataFormRef" :model="formData" :rules="rules" label-width="100px">
|
||||||
<el-form-item label="通知标题" prop="title">
|
<el-form-item label="通知标题" prop="title">
|
||||||
<el-input v-model="formData.title" placeholder="通知标题" clearable />
|
<el-input v-model="formData.title" placeholder="通知标题" clearable />
|
||||||
@@ -201,7 +221,7 @@
|
|||||||
</el-select>
|
</el-select>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item label="通知内容" prop="content">
|
<el-form-item label="通知内容" prop="content">
|
||||||
<WangEditor v-model="formData.content" />
|
<WangEditor v-model="formData.content" height="350px" />
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-form>
|
</el-form>
|
||||||
<template #footer>
|
<template #footer>
|
||||||
@@ -285,6 +305,7 @@ const pageData = ref<NoticeItem[]>([]);
|
|||||||
const dialog = reactive({
|
const dialog = reactive({
|
||||||
title: "",
|
title: "",
|
||||||
visible: false,
|
visible: false,
|
||||||
|
fullscreen: false,
|
||||||
});
|
});
|
||||||
|
|
||||||
// 通知公告表单数据
|
// 通知公告表单数据
|
||||||
@@ -351,6 +372,7 @@ function handleSelectionChange(selection: any) {
|
|||||||
|
|
||||||
// 打开通知公告弹窗
|
// 打开通知公告弹窗
|
||||||
function handleOpenDialog(id?: string) {
|
function handleOpenDialog(id?: string) {
|
||||||
|
dialog.fullscreen = false;
|
||||||
UserAPI.getOptions().then((data) => {
|
UserAPI.getOptions().then((data) => {
|
||||||
userOptions.value = data;
|
userOptions.value = data;
|
||||||
});
|
});
|
||||||
@@ -451,9 +473,15 @@ function normalizeTargetUsers(value?: unknown) {
|
|||||||
// 关闭通知公告弹窗
|
// 关闭通知公告弹窗
|
||||||
function handleCloseDialog() {
|
function handleCloseDialog() {
|
||||||
dialog.visible = false;
|
dialog.visible = false;
|
||||||
|
dialog.fullscreen = false;
|
||||||
resetForm();
|
resetForm();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// 弹窗全屏切换
|
||||||
|
function toggleDialogFullscreen() {
|
||||||
|
dialog.fullscreen = !dialog.fullscreen;
|
||||||
|
}
|
||||||
|
|
||||||
// 删除通知公告
|
// 删除通知公告
|
||||||
function handleDelete(id?: number) {
|
function handleDelete(id?: number) {
|
||||||
const deleteIds = [id || selectIds.value].join(",");
|
const deleteIds = [id || selectIds.value].join(",");
|
||||||
@@ -482,10 +510,12 @@ function handleDelete(id?: number) {
|
|||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// 关闭通知详情弹窗
|
||||||
const closeDetailDialog = () => {
|
const closeDetailDialog = () => {
|
||||||
detailDialog.visible = false;
|
detailDialog.visible = false;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
// 打开通知详情弹窗
|
||||||
const openDetailDialog = async (id: string) => {
|
const openDetailDialog = async (id: string) => {
|
||||||
const noticeDetail = await NoticeAPI.getDetail(id);
|
const noticeDetail = await NoticeAPI.getDetail(id);
|
||||||
currentNotice.value = noticeDetail;
|
currentNotice.value = noticeDetail;
|
||||||
|
|||||||
Reference in New Issue
Block a user