Merge remote-tracking branch 'origin/dev-yxl' into dev-sws

v1.0.0
sws 2024-10-12 10:53:05 +08:00
commit 32b697d1e4
12 changed files with 28 additions and 16 deletions

View File

@ -17,7 +17,7 @@
</el-dialog> </el-dialog>
<div class="search-icon re" :style="'height:' + upload_size + ';width:' + upload_size + ';'" @click="icon_click"> <div class="search-icon re" :style="'height:' + upload_size + ';width:' + upload_size + ';'" @click="icon_click">
<icon :name="!isEmpty(icon_class) ? icon_class : 'add'" :size="Number(size) / 2 + ''" color="c"></icon> <icon :name="!isEmpty(icon_class) ? icon_class : 'add'" :size="Number(size) / 2 + ''" color="c"></icon>
<el-icon v-if="!isEmpty(icon_class)" class="iconfont icon-close-o size-16 abs cr-c top-de-5 right-de-5" @click.stop="remove_icon" /> <el-icon v-if="!isEmpty(icon_class)" class="iconfont icon-close-o1 size-16 abs cr-c top-de-5 right-de-5" @click.stop="remove_icon" />
</div> </div>
</template> </template>
<script setup lang="ts"> <script setup lang="ts">

View File

@ -7,7 +7,7 @@
<div class="flex-row align-c gap-10"> <div class="flex-row align-c gap-10">
<el-switch v-model="form.tabs_top_up" active-value="1" inactive-value="0" :disabled="is_immersion_model" /> <el-switch v-model="form.tabs_top_up" active-value="1" inactive-value="0" :disabled="is_immersion_model" />
<el-tooltip effect="dark" :show-after="200" :hide-after="200" content="<span>开启沉浸样式时,选项卡置顶功能禁用</span>" raw-content placement="top"> <el-tooltip effect="dark" :show-after="200" :hide-after="200" content="<span>开启沉浸样式时,选项卡置顶功能禁用</span>" raw-content placement="top">
<icon name="miaosha-hdgz" size="16"></icon> <icon name="miaosha-hdgz" size="12" color="#999"></icon>
</el-tooltip> </el-tooltip>
</div> </div>
</el-form-item> </el-form-item>

View File

@ -27,7 +27,7 @@
> >
<swiper-slide v-for="(item, index) in form.carousel_list" :key="index"> <swiper-slide v-for="(item, index) in form.carousel_list" :key="index">
<div class="item-image flex align-c w h re" :style="img_style"> <div class="item-image flex align-c w h re" :style="img_style">
<image-empty v-model="item.carousel_img[0]" :style="img_style" :fit="img_fit" error-style="width:5rem;height:5rem"></image-empty> <image-empty v-model="item.carousel_img[0]" :style="img_style" :fit="img_fit"></image-empty>
<div v-if="new_style.video_is_show == '1' && item.carousel_video.length > 0" :class="{'x-middle': new_style.video_location == 'center', 'right-0': new_style.video_location == 'flex-end' }" class="z-deep video-class flex-row abs gap-10 align-c oh" :style="video_style"> <div v-if="new_style.video_is_show == '1' && item.carousel_video.length > 0" :class="{'x-middle': new_style.video_location == 'center', 'right-0': new_style.video_location == 'flex-end' }" class="z-deep video-class flex-row abs gap-10 align-c oh" :style="video_style">
<template v-if="new_style.video_type == 'img'"> <template v-if="new_style.video_type == 'img'">
<image-empty v-model="new_style.video_img[0]" class="video_img" error-img-style="width: 1.4rem;height: 1.4rem;" /> <image-empty v-model="new_style.video_img[0]" class="video_img" error-img-style="width: 1.4rem;height: 1.4rem;" />
@ -41,7 +41,7 @@
</swiper-slide> </swiper-slide>
<swiper-slide v-for="(item, index1) in seat_list" :key="index1"> <swiper-slide v-for="(item, index1) in seat_list" :key="index1">
<div class="item-image flex align-c w h re" :style="img_style"> <div class="item-image flex align-c w h re" :style="img_style">
<image-empty v-model="item.carousel_img[0]" :style="img_style" :fit="img_fit" error-style="width:5rem;height:5rem"></image-empty> <image-empty v-model="item.carousel_img[0]" :style="img_style" :fit="img_fit"></image-empty>
<div v-if="new_style.video_is_show == '1' && item.carousel_video.length > 0" :class="{'x-middle': new_style.video_location == 'center', 'right-0': new_style.video_location == 'flex-end' }" class="z-deep video-class flex-row abs gap-10 align-c oh" :style="video_style"> <div v-if="new_style.video_is_show == '1' && item.carousel_video.length > 0" :class="{'x-middle': new_style.video_location == 'center', 'right-0': new_style.video_location == 'flex-end' }" class="z-deep video-class flex-row abs gap-10 align-c oh" :style="video_style">
<template v-if="new_style.video_type == 'img'"> <template v-if="new_style.video_type == 'img'">
<image-empty v-model="new_style.video_img[0]" class="video_img" error-img-style="width: 1.4rem;height: 1.4rem;" /> <image-empty v-model="new_style.video_img[0]" class="video_img" error-img-style="width: 1.4rem;height: 1.4rem;" />
@ -307,10 +307,16 @@ const slideChange = (swiper: { realIndex: number }) => {
:deep(.swiper-slide) { :deep(.swiper-slide) {
.item-image { .item-image {
background: #F8FDFF;
height: v-bind(newHeight); height: v-bind(newHeight);
} }
} }
:deep(.el-image) {
height: 100%;
width: 100%;
.image-slot img {
width: 5rem;
}
}
.video_img { .video_img {
max-width: 6rem; max-width: 6rem;
height: 1.4rem; height: 1.4rem;

View File

@ -49,7 +49,7 @@
<el-input v-model="item.video_title" placeholder="请输入视频按钮名称" clearable></el-input> <el-input v-model="item.video_title" placeholder="请输入视频按钮名称" clearable></el-input>
</el-form-item> </el-form-item>
</div> </div>
<el-icon class="iconfont icon-close-o size-16 abs cr-c top-de-5 right-de-5" @click="remove(index)" /> <el-icon class="iconfont icon-close-o1 size-16 abs cr-c top-de-5 right-de-5" @click="remove(index)" />
</div> </div>
</div> </div>
<el-button class="mt-20 mb-20 w" @click="add">+</el-button> <el-button class="mt-20 mb-20 w" @click="add">+</el-button>

View File

@ -629,6 +629,7 @@ const data_handling = (x: number, y: number) => {
// Y0 // Y0
if (isWithinBounds(item.location.y + y, item.com_data.com_height, center_height.value)) { if (isWithinBounds(item.location.y + y, item.com_data.com_height, center_height.value)) {
item.location.y += y; item.location.y += y;
item.location.staging_y += y;
} }
} }
}); });
@ -643,6 +644,7 @@ const data_handling = (x: number, y: number) => {
// Y0 // Y0
if (isWithinBounds(item.location.y + y, item.com_data.com_height, center_height.value)) { if (isWithinBounds(item.location.y + y, item.com_data.com_height, center_height.value)) {
item.location.y += y; item.location.y += y;
item.location.staging_y += y;
} }
} }
}); });

View File

@ -29,7 +29,7 @@
<url-value v-model="item.carousel_link"></url-value> <url-value v-model="item.carousel_link"></url-value>
</el-form-item> </el-form-item>
</div> </div>
<el-icon class="iconfont icon-close-o size-16 abs cr-c top-de-5 right-de-5" @click="img_remove(index)" /> <el-icon class="iconfont icon-close-o1 size-16 abs cr-c top-de-5 right-de-5" @click="img_remove(index)" />
</div> </div>
</div> </div>
<el-button class="mt-20 mb-20 w" @click="img_add">+</el-button> <el-button class="mt-20 mb-20 w" @click="img_add">+</el-button>

View File

@ -7,7 +7,7 @@
<div class="flex-row align-c gap-10"> <div class="flex-row align-c gap-10">
<el-switch v-model="form.tabs_top_up" active-value="1" inactive-value="0" :disabled="is_immersion_model"/> <el-switch v-model="form.tabs_top_up" active-value="1" inactive-value="0" :disabled="is_immersion_model"/>
<el-tooltip effect="dark" :show-after="200" :hide-after="200" content="<span>开启沉浸样式时,选项卡置顶功能禁用</span>" raw-content placement="top"> <el-tooltip effect="dark" :show-after="200" :hide-after="200" content="<span>开启沉浸样式时,选项卡置顶功能禁用</span>" raw-content placement="top">
<icon name="miaosha-hdgz" size="16"></icon> <icon name="miaosha-hdgz" size="12" color="#999"></icon>
</el-tooltip> </el-tooltip>
</div> </div>
</el-form-item> </el-form-item>

View File

@ -14,7 +14,7 @@
</el-col> </el-col>
</el-row> </el-row>
<el-row class="mt-10 w"> <el-row class="mt-10 w">
<el-col :span="24"><url-value v-model="form.icon_src"></url-value></el-col> <el-col :span="24"><url-value v-model="form.icon_link"></url-value></el-col>
</el-row> </el-row>
</template> </template>
</el-form-item> </el-form-item>

View File

@ -126,8 +126,8 @@ const position_class = computed(() => (form.value?.indicator_location == 'center
left: 50%; left: 50%;
z-index: 3; z-index: 3;
transform: translateX(-50%); transform: translateX(-50%);
.roll {
width: 39rem; width: 39rem;
.roll {
padding-bottom: 0.9rem; padding-bottom: 0.9rem;
margin: 0 auto; margin: 0 auto;
cursor: pointer; cursor: pointer;

View File

@ -35,7 +35,7 @@
<div class="flex-row align-c gap-10"> <div class="flex-row align-c gap-10">
<el-switch v-model="form.immersive_style" active-value="1" inactive-value="0" :disabled="is_have_tabs" @change="change_immersive_style"></el-switch> <el-switch v-model="form.immersive_style" active-value="1" inactive-value="0" :disabled="is_have_tabs" @change="change_immersive_style"></el-switch>
<el-tooltip effect="dark" :show-after="200" :hide-after="200" content="<span>开启沉浸样式时,不可添加选项卡和选项卡轮播。<br/>并且商品选项卡和文章选项卡的选项卡置顶功能禁用</span>" raw-content placement="top"> <el-tooltip effect="dark" :show-after="200" :hide-after="200" content="<span>开启沉浸样式时,不可添加选项卡和选项卡轮播。<br/>并且商品选项卡和文章选项卡的选项卡置顶功能禁用</span>" raw-content placement="top">
<icon name="miaosha-hdgz" size="16"></icon> <icon name="miaosha-hdgz" size="12" color="#999"></icon>
</el-tooltip> </el-tooltip>
</div> </div>
</el-form-item> </el-form-item>
@ -109,7 +109,11 @@ const state = reactive({
}); });
// 使toRefs // 使toRefs
const { form, search_content } = toRefs(state); const { form, search_content } = toRefs(state);
console.log(form); //
watchEffect(() => {
form.value = props.value;
search_content.value = props.content;
});
const header_background_type_change_event = (val: any) => { const header_background_type_change_event = (val: any) => {
if (val === 'color_image') { if (val === 'color_image') {

View File

@ -18,7 +18,7 @@ interface DefaultFooterNav {
is_arrows_show: string; is_arrows_show: string;
is_center: string; is_center: string;
is_icon_show: string; is_icon_show: string;
icon_src: object; icon_link: object;
icon_img: uploadList[]; icon_img: uploadList[];
icon_class: string; icon_class: string;
search_botton_img: uploadList[]; search_botton_img: uploadList[];
@ -76,7 +76,7 @@ const defaultFooterNav: DefaultFooterNav = {
is_arrows_show: '1', is_arrows_show: '1',
is_center: '0', is_center: '0',
is_icon_show: '1', is_icon_show: '1',
icon_src: {}, icon_link: {},
icon_img: [], icon_img: [],
icon_class: 'search', icon_class: 'search',
search_botton_img: [], search_botton_img: [],

View File

@ -9,7 +9,7 @@ interface defaultSearch {
content: { content: {
is_center: string; is_center: string;
is_icon_show: string; is_icon_show: string;
icon_src: object; icon_link: object;
icon_img: uploadList[]; icon_img: uploadList[];
icon_class: string; icon_class: string;
search_botton_img: uploadList[]; search_botton_img: uploadList[];
@ -40,7 +40,7 @@ const defaultSearch: defaultSearch = {
content: { content: {
is_center: '0', is_center: '0',
is_icon_show: '1', is_icon_show: '1',
icon_src: {}, icon_link: {},
icon_img: [], icon_img: [],
icon_class: '', icon_class: '',
search_botton_img: [], search_botton_img: [],