feat: 新增全局布局样式并提升组件响应式表现

- 在 global-layout.scss 中引入全局布局样式,统一页面宽度与对齐方式
- 更新多个组件与页面以优化响应式,包括宽度、间距及 flex 布局等调整
- 在 API 请求中增加 loading 状态管理,改善用户体验
- 优化领券中心与商品详情页,提升功能与 UI 一致性
This commit is contained in:
田香琪
2026-06-23 10:17:35 +08:00
parent c1447b4376
commit 8a60e23214
129 changed files with 5236 additions and 2232 deletions

View File

@@ -112,10 +112,14 @@ export default {
},
methods: {
handleCLickImg(val, index) {
this.$refs.ossManage.selectImage = true;
this.picModalFlag = true;
this.selectedFormBtnName = val;
this.picIndex = index;
this.$nextTick(() => {
if (this.$refs.ossManage) {
this.$refs.ossManage.selectImage = true;
}
});
},
callbackSelected(val) {
this.picModalFlag = false;

View File

@@ -1,15 +1,8 @@
<template>
<div>
<div class="upload-pic-thumb">
<vuedraggable
:list="uploadList"
:disabled="!draggable || !multiple"
:animation="200"
class="list-group"
ghost-class="thumb-ghost"
@end="onEnd"
>
<div v-for="(item, index) in uploadList" :key="index" class="upload-list">
<div v-if="disable || isView" class="list-group">
<div v-for="item in uploadList" :key="item.url" class="upload-list">
<div v-if="item.status == 'finished'" style="height: 60px">
<img :src="item.url" alt="" />
<div class="upload-list-cover">
@@ -25,6 +18,35 @@
/>
</div>
</div>
</div>
<vuedraggable
v-else
v-model="uploadList"
:disabled="disable || !draggable || !multiple"
:animation="200"
class="list-group"
ghost-class="thumb-ghost"
item-key="url"
@end="onEnd"
>
<template #item="{ element: item }">
<div class="upload-list">
<div v-if="item.status == 'finished'" style="height: 60px">
<img :src="item.url" alt="" />
<div class="upload-list-cover">
<el-icon class="action-icon" @click="handleView(item.url)"><View /></el-icon>
<el-icon v-if="remove" class="action-icon" @click="handleRemove(item)"><Delete /></el-icon>
</div>
</div>
<div v-else>
<el-progress
v-if="item.showProgress"
:percentage="item.percentage"
:show-text="false"
/>
</div>
</div>
</template>
</vuedraggable>
<div
v-if="!isView"
@@ -121,9 +143,13 @@ export default {
},
methods: {
handleCLickImg(val) {
this.$refs.ossManage.selectImage = true;
this.picModelFlag = true;
this.selectedFormBtnName = val;
this.$nextTick(() => {
if (this.$refs.ossManage) {
this.$refs.ossManage.selectImage = true;
}
});
},
callbackSelected(val) {
this.picModelFlag = false;