hookehuyr

✨ feat: 上传跳转页面慢,新增loading页面

......@@ -14,14 +14,24 @@
</van-col>
</van-row>
</div>
<van-overlay :show="show" z-index="9999">
<div class="overlay-wrapper" @click.stop>
<van-loading size="24px">跳转中...</van-loading>
</div>
</van-overlay>
</template>
<script setup>
import icon_video from '@images/video.png'
import { ref, reactive, onMounted } from 'vue'
import { useRoute, useRouter, onBeforeRouteLeave } from 'vue-router'
const props = defineProps({
item: Object,
type: String
type: String,
user_id: Number
})
const emit = defineEmits(['on-click']);
const handle = () => {
......@@ -31,12 +41,16 @@ const handle = () => {
}
// 上传视频
const show = ref(false);
const onUpload = (v) => {
// x_field_1是金数据表单传入的参数,老师上传的格式为:book_id
location.href = 'http://jsj.onwall.cn/f/g7D0MT?x_field_1=' + v.id;
show.value = true;
// x_field_1是金数据表单传入的参数,老师上传的格式为:user_id-book_id-perf_id,perf_id 为 0
let str = `${props.user_id}-${v.id}-0`;
location.href = `http://jsj.onwall.cn/f/g7D0MT?x_field_1=${str}`;
}
onMounted(() => {
onBeforeRouteLeave(() => {
show.value = false;
})
</script>
......@@ -95,4 +109,13 @@ export default {
}
}
}
.overlay-wrapper {
display: flex;
align-items: center;
justify-content: center;
height: 100%;
width: auto;
text-align: center;
}
</style>
......
......@@ -94,6 +94,11 @@
<donate-book :showPopup="showDonate" :item="donateItem" @on-close="closeDonate"></donate-book>
<van-overlay :show="show" z-index="9999">
<div class="wrapper" @click.stop>
<van-loading size="24px">跳转中...</van-loading>
</div>
</van-overlay>
</template>
<script setup>
......@@ -216,6 +221,7 @@ const onClose = () => { // 关闭提示框回调
showNotice.value = false;
}
const show = ref(false); // 跳转等待提示
const uploadVideo = () => {
axios.get('/srv/?a=can_upload')
.then(res => {
......@@ -224,10 +230,11 @@ const uploadVideo = () => {
if (res.data.data.can_upload) {
// 已读隐私条例,直接跳转上传页面
if (Cookies.get('privacy_notice')) {
// x_field_1是金数据表单传入的参数,家长上传的格式为:book_id-perf_id,perf_id是当前缺省的儿童id
show.value = true;
// x_field_1 是金数据表单传入的参数,家长上传的格式为:user_id-book_id-perf_id,perf_id是当前缺省的儿童id
let default_perf = Cookies.get('default_perf') ? JSON.parse(Cookies.get('default_perf')) : '';
let str = `${$route.query.id}-${default_perf.perf_id}`
location.href = `https://jinshuju.net/f/NAGn1D?x_field_1=${str}`;
let str = `${$route.query.user_id}-${$route.query.id}-${default_perf.perf_id}`
location.href = `https://jsjs.onwall.cn/f/NAGn1D?x_field_1=${str}`;
} else {
$router.push({
path: '/client/privacyNotice'
......@@ -283,6 +290,8 @@ onActivated(() => { // keepAlive 重置后执行回调
}
});
}
// 关闭等待提示
show.value = false;
});
const changeRouterKeepAlive = (path, keepAlive) => {
......