Skip to content

Commit 65298ca

Browse files
committed
优化弹窗手机端显示
1 parent 72ba2f3 commit 65298ca

File tree

10 files changed

+49
-21
lines changed

10 files changed

+49
-21
lines changed

server/resource/package/web/view/table.vue.tpl

Lines changed: 3 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -627,7 +627,7 @@ getDataSourceFunc()
627627
{{- end }}
628628
{{- end }}
629629
{{- end }}
630-
<el-table-column align="left" label="操作" fixed="right" min-width="240">
630+
<el-table-column align="left" label="操作" fixed="right" :min-width="appStore.operateMinWith">
631631
<template #default="scope">
632632
<el-button {{ if $global.AutoCreateBtnAuth }}v-auth="btnAuth.info"{{ end }} type="primary" link class="table-button" @click="getDetails(scope.row)"><el-icon style="margin-right: 5px"><InfoFilled /></el-icon>查看</el-button>
633633
<el-button {{ if $global.AutoCreateBtnAuth }}v-auth="btnAuth.edit"{{ end }} type="primary" link icon="edit" class="table-button" @click="update{{.StructName}}Func(scope.row)">编辑</el-button>
@@ -647,7 +647,7 @@ getDataSourceFunc()
647647
/>
648648
</div>
649649
</div>
650-
<el-drawer destroy-on-close :size="drawerWith" v-model="dialogFormVisible" :show-close="false" :before-close="closeDialog">
650+
<el-drawer destroy-on-close :size="appStore.drawerSize" v-model="dialogFormVisible" :show-close="false" :before-close="closeDialog">
651651
<template #header>
652652
<div class="flex justify-between items-center">
653653
<span class="text-lg">{{"{{"}}type==='create'?'新增':'编辑'{{"}}"}}</span>
@@ -732,7 +732,7 @@ getDataSourceFunc()
732732
</el-form>
733733
</el-drawer>
734734

735-
<el-drawer destroy-on-close :size="drawerWith" v-model="detailShow" :show-close="true" :before-close="closeDetailShow" title="查看">
735+
<el-drawer destroy-on-close :size="appStore.drawerSize" v-model="detailShow" :show-close="true" :before-close="closeDetailShow" title="查看">
736736
<el-descriptions :column="1" border>
737737
{{- range .Fields}}
738738
{{- if .Desc }}
@@ -845,9 +845,6 @@ defineOptions({
845845
// 提交按钮loading
846846
const btnLoading = ref(false)
847847
const appStore = useAppStore()
848-
const drawerWith = computed(() => {
849-
return appStore.device === 'mobile' ? '100%' : '800px'
850-
})
851848
852849
// 控制更多查询条件显示/隐藏状态
853850
const showAllQuery = ref(false)

web/src/components/selectImage/selectImage.vue

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@
2323
/>
2424
</div>
2525

26-
<el-drawer v-model="drawer" title="媒体库" size="650px">
26+
<el-drawer v-model="drawer" title="媒体库" :size="appStore.drawerSize">
2727
<warning-bar title="点击“文件名/备注”可以编辑文件名或者备注内容。" />
2828
<div class="gva-btn-list gap-2">
2929
<upload-common :image-common="imageCommon" @on-success="getImageList" />
@@ -124,6 +124,9 @@
124124
import { ElMessage, ElMessageBox } from 'element-plus'
125125
import { Picture as IconPicture } from '@element-plus/icons-vue'
126126
import selectComponent from '@/components/selectImage/selectComponent.vue'
127+
import { useAppStore } from "@/pinia";
128+
129+
const appStore = useAppStore()
127130
128131
const imageUrl = ref('')
129132
const imageCommon = ref('')

web/src/pinia/modules/app.js

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,8 @@ import { ref, watchEffect, reactive } from 'vue'
33
import { setBodyPrimaryColor } from '@/utils/format'
44
export const useAppStore = defineStore('app', () => {
55
const device = ref('')
6+
const drawerSize = ref('')
7+
const operateMinWith = ref('240')
68
const config = reactive({
79
weakness: false,
810
grey: false,
@@ -43,6 +45,13 @@ export const useAppStore = defineStore('app', () => {
4345
}
4446

4547
const toggleDevice = (e) => {
48+
if(e === 'mobile'){
49+
drawerSize.value = '100%'
50+
operateMinWith.value = '80'
51+
}else {
52+
drawerSize.value = '800'
53+
operateMinWith.value = '240'
54+
}
4655
device.value = e
4756
}
4857

@@ -125,6 +134,8 @@ export const useAppStore = defineStore('app', () => {
125134
return {
126135
theme,
127136
device,
137+
drawerSize,
138+
operateMinWith,
128139
config,
129140
toggleTheme,
130141
toggleDevice,

web/src/view/layout/header/index.vue

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,8 @@
99
>
1010
<div class="flex items-center cursor-pointer flex-1">
1111
<div
12-
class="flex items-center cursor-pointer min-w-48"
12+
class="flex items-center cursor-pointer"
13+
:class="isMobile ? '' : 'min-w-48'"
1314
@click="router.push({ path: '/' })"
1415
>
1516
<img

web/src/view/superAdmin/api/api.vue

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -102,7 +102,7 @@
102102
</template>
103103
</el-table-column>
104104

105-
<el-table-column align="left" fixed="right" label="操作" width="200">
105+
<el-table-column align="left" fixed="right" label="操作" :min-width="appStore.operateMinWith">
106106
<template #default="scope">
107107
<el-button
108108
icon="edit"
@@ -138,7 +138,7 @@
138138

139139
<el-drawer
140140
v-model="syncApiFlag"
141-
size="80%"
141+
:size="appStore.drawerSize"
142142
:before-close="closeSyncDialog"
143143
:show-close="false"
144144
>
@@ -341,7 +341,7 @@
341341

342342
<el-drawer
343343
v-model="dialogFormVisible"
344-
size="60%"
344+
:size="appStore.drawerSize"
345345
:before-close="closeDialog"
346346
:show-close="false"
347347
>
@@ -420,11 +420,14 @@
420420
import ExportTemplate from '@/components/exportExcel/exportTemplate.vue'
421421
import ImportExcel from '@/components/exportExcel/importExcel.vue'
422422
import { butler } from '@/api/autoCode'
423+
import { useAppStore } from "@/pinia";
423424
424425
defineOptions({
425426
name: 'Api'
426427
})
427428
429+
const appStore = useAppStore()
430+
428431
const methodFilter = (value) => {
429432
const target = methodOptions.value.filter((item) => item.value === value)[0]
430433
return target && `${target.label}`

web/src/view/superAdmin/authority/authority.vue

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -62,7 +62,7 @@
6262
</el-table>
6363
</div>
6464
<!-- 新增角色弹窗 -->
65-
<el-drawer v-model="authorityFormVisible" :show-close="false">
65+
<el-drawer v-model="authorityFormVisible" :size="appStore.drawerSize" :show-close="false">
6666
<template #header>
6767
<div class="flex justify-between items-center">
6868
<span class="text-lg">{{ authorityTitleForm }}</span>
@@ -114,8 +114,7 @@
114114
<el-drawer
115115
v-if="drawer"
116116
v-model="drawer"
117-
:with-header="false"
118-
size="40%"
117+
:size="appStore.drawerSize"
119118
title="角色配置"
120119
>
121120
<el-tabs :before-leave="autoEnter" type="border-card">
@@ -154,6 +153,7 @@
154153
155154
import { ref } from 'vue'
156155
import { ElMessage, ElMessageBox } from 'element-plus'
156+
import { useAppStore } from "@/pinia"
157157
158158
defineOptions({
159159
name: 'Authority'
@@ -175,6 +175,7 @@
175175
const drawer = ref(false)
176176
const dialogType = ref('add')
177177
const activeRow = ref({})
178+
const appStore = useAppStore()
178179
179180
const authorityTitleForm = ref('新增角色')
180181
const authorityFormVisible = ref(false)

web/src/view/superAdmin/dictionary/sysDictionary.vue

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -49,7 +49,7 @@
4949
</div>
5050
<el-drawer
5151
v-model="drawerFormVisible"
52-
size="30%"
52+
:size="appStore.drawerSize"
5353
:show-close="false"
5454
:before-close="closeDrawer"
5555
>
@@ -120,11 +120,14 @@
120120
121121
import sysDictionaryDetail from './sysDictionaryDetail.vue'
122122
import { Edit } from '@element-plus/icons-vue'
123+
import { useAppStore } from "@/pinia";
123124
124125
defineOptions({
125126
name: 'SysDictionary'
126127
})
127128
129+
const appStore = useAppStore()
130+
128131
const selectID = ref(0)
129132
130133
const formData = ref({

web/src/view/superAdmin/dictionary/sysDictionaryDetail.vue

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -45,7 +45,7 @@
4545
width="120"
4646
/>
4747

48-
<el-table-column align="left" label="操作" width="180">
48+
<el-table-column align="left" label="操作" :min-width="appStore.operateMinWith">
4949
<template #default="scope">
5050
<el-button
5151
type="primary"
@@ -82,7 +82,7 @@
8282

8383
<el-drawer
8484
v-model="drawerFormVisible"
85-
size="30%"
85+
:size="appStore.drawerSize"
8686
:show-close="false"
8787
:before-close="closeDrawer"
8888
>
@@ -156,11 +156,14 @@
156156
import { ref, watch } from 'vue'
157157
import { ElMessage, ElMessageBox } from 'element-plus'
158158
import { formatBoolean, formatDate } from '@/utils/format'
159+
import { useAppStore } from "@/pinia";
159160
160161
defineOptions({
161162
name: 'SysDictionaryDetail'
162163
})
163164
165+
const appStore = useAppStore()
166+
164167
const props = defineProps({
165168
sysDictionaryID: {
166169
type: Number,

web/src/view/superAdmin/menu/menu.vue

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -72,7 +72,7 @@
7272
min-width="360"
7373
prop="component"
7474
/>
75-
<el-table-column align="left" fixed="right" label="操作" width="300">
75+
<el-table-column align="left" fixed="right" label="操作" :min-width="appStore.operateMinWith">
7676
<template #default="scope">
7777
<el-button
7878
type="primary"
@@ -104,7 +104,7 @@
104104
</div>
105105
<el-drawer
106106
v-model="dialogFormVisible"
107-
size="60%"
107+
:size="appStore.drawerSize"
108108
:before-close="handleClose"
109109
:show-close="false"
110110
>
@@ -423,11 +423,14 @@
423423
import ComponentsCascader from '@/view/superAdmin/menu/components/components-cascader.vue'
424424
425425
import pathInfo from '@/pathInfo.json'
426+
import { useAppStore } from "@/pinia";
426427
427428
defineOptions({
428429
name: 'Menus'
429430
})
430431
432+
const appStore = useAppStore()
433+
431434
const rules = reactive({
432435
path: [{ required: true, message: '请输入菜单name', trigger: 'blur' }],
433436
component: [{ required: true, message: '请输入文件路径', trigger: 'blur' }],

web/src/view/superAdmin/user/user.vue

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -105,7 +105,7 @@
105105
</template>
106106
</el-table-column>
107107

108-
<el-table-column label="操作" min-width="250" fixed="right">
108+
<el-table-column label="操作" :min-width="appStore.operateMinWith" fixed="right">
109109
<template #default="scope">
110110
<el-button
111111
type="primary"
@@ -145,7 +145,7 @@
145145
</div>
146146
<el-drawer
147147
v-model="addUserDialog"
148-
size="60%"
148+
:size="appStore.drawerSize"
149149
:show-close="false"
150150
:close-on-press-escape="false"
151151
:close-on-click-modal="false"
@@ -236,11 +236,14 @@
236236
import { nextTick, ref, watch } from 'vue'
237237
import { ElMessage, ElMessageBox } from 'element-plus'
238238
import SelectImage from '@/components/selectImage/selectImage.vue'
239+
import { useAppStore } from "@/pinia";
239240
240241
defineOptions({
241242
name: 'User'
242243
})
243244
245+
const appStore = useAppStore()
246+
244247
const searchInfo = ref({
245248
username: '',
246249
nickname: '',

0 commit comments

Comments
 (0)