修改页面显示逻辑

v1.2.0
于肖磊 2025-01-17 18:48:40 +08:00
parent 0beaa8c714
commit 4bc19453d6
4 changed files with 18 additions and 14 deletions

View File

@ -220,7 +220,7 @@
</template> </template>
<!-- 图片预览 --> <!-- 图片预览 -->
<el-image-viewer v-if="preview_switch_img && upload_type == 'img'" class="123123" :z-index="999999" :url-list="[preview_url]" teleported :hide-on-click-modal="true" @close="preview_close"></el-image-viewer> <el-image-viewer v-if="preview_switch_img && upload_type == 'img'" class="123123" :z-index="999999" :url-list="[preview_url]" teleported :hide-on-click-modal="true" @close="preview_close"></el-image-viewer>
<upload-model v-model="upload_model_visible" :type="upload_type" :exts="props.type == 'img' ? ext_img_name_list : props.type == 'video' ? ext_video_name_list : ext_file_name_list" @close-all="close_all_upload_model" @close="close_upload_model"></upload-model> <upload-model v-model="upload_model_visible" :type="upload_type" :exts="upload_type == 'img' ? ext_img_name_list : upload_type == 'video' ? ext_video_name_list : ext_file_name_list" @close-all="close_all_upload_model" @close="close_upload_model"></upload-model>
<form-upload-category v-model="upload_category_model_visible" :value="upload_category_model" :type="upload_category_type" :category-id="upload_category_id" :category-pid="upload_category_pid" @confirm="upload_category_confirm"></form-upload-category> <form-upload-category v-model="upload_category_model_visible" :value="upload_category_model" :type="upload_category_type" :category-id="upload_category_id" :category-pid="upload_category_pid" @confirm="upload_category_confirm"></form-upload-category>
</template> </template>
<script lang="ts" setup> <script lang="ts" setup>

View File

@ -202,7 +202,7 @@ const upload_type_name = computed(() => {
return props.type === 'img' ? '图片' : props.type === 'video' ? '视频' : '文件'; return props.type === 'img' ? '图片' : props.type === 'video' ? '视频' : '文件';
}); });
// //
const exts_text = ref(props.exts.join(',')); const exts_text = computed(() => props.exts.join(','));
const file_list = ref<UploadUserFile[]>([]); const file_list = ref<UploadUserFile[]>([]);
interface fileData { interface fileData {
file: File; file: File;

View File

@ -2,7 +2,7 @@
<div class="w"> <div class="w">
<el-tabs v-model="tabs_name" class="content-tabs" @tab-change="change_tab_event"> <el-tabs v-model="tabs_name" class="content-tabs" @tab-change="change_tab_event">
<el-tab-pane label="选项卡" name="tabs"> <el-tab-pane label="选项卡" name="tabs">
<model-tabs-styles :value="form" :tabs-style="tabsStyle" :is-common="false"></model-tabs-styles> <model-tabs-styles :value="form" :content="new_content" :tabs-style="tabsStyle" :is-common="false"></model-tabs-styles>
</el-tab-pane> </el-tab-pane>
<el-tab-pane label="轮播" name="carousel"> <el-tab-pane label="轮播" name="carousel">
<model-carousel-styles :value="form" :content="new_content" :is-common="false"></model-carousel-styles> <model-carousel-styles :value="form" :content="new_content" :is-common="false"></model-carousel-styles>

View File

@ -22,7 +22,8 @@ const isLogoutModalShown = ref(true);
// 用于存储每个请求的CancelToken // 用于存储每个请求的CancelToken
const pendingRequests = new Map(); const pendingRequests = new Map();
// 不需要认证的接口
const release_url = ['diyapi/attachmentupload'];
// 创建 axios 实例 // 创建 axios 实例
const index = window.location.href.lastIndexOf('?s='); const index = window.location.href.lastIndexOf('?s=');
const pro_url = window.location.href.substring(0, index); const pro_url = window.location.href.substring(0, index);
@ -46,17 +47,20 @@ service.interceptors.request.use(
config.url = config.url + '&token=' + (JSON.parse(cookie) !== 'null' ? JSON.parse(cookie)?.token : ''); config.url = config.url + '&token=' + (JSON.parse(cookie) !== 'null' ? JSON.parse(cookie)?.token : '');
} }
} }
// 检查是否有相同请求正在进行,如果有则取消, 防止重复请求导致返回数据有误 // 判断是否是包含不需要认证的接口
if (pendingRequests.has(config.url)) { const release_list = release_url.filter(item => config.url?.includes(item));
const cancelToken = pendingRequests.get(config.url); if (release_list.length === 0) {
cancelToken.cancel('canceled'); // 检查是否有相同请求正在进行,如果有则取消, 防止重复请求导致返回数据有误
pendingRequests.delete(config.url); if (pendingRequests.has(config.url)) {
const cancelToken = pendingRequests.get(config.url);
cancelToken.cancel('canceled');
pendingRequests.delete(config.url);
}
// 创建一个新的 CancelToken
const source = axios.CancelToken.source();
config.cancelToken = source.token;
pendingRequests.set(config.url, source);
} }
// 创建一个新的 CancelToken
const source = axios.CancelToken.source();
config.cancelToken = source.token;
pendingRequests.set(config.url, source);
return config; return config;
}, },
(error: any) => { (error: any) => {