解决冲突
commit
1cab5abe56
Binary file not shown.
|
After Width: | Height: | Size: 2.7 KiB |
Binary file not shown.
|
After Width: | Height: | Size: 160 KiB |
Binary file not shown.
|
After Width: | Height: | Size: 2.3 KiB |
Binary file not shown.
|
After Width: | Height: | Size: 1.7 KiB |
|
|
@ -24,7 +24,7 @@
|
|||
<icon name="add" size="18" class="c-pointer" @click="add_type"></icon>
|
||||
</div>
|
||||
<el-scrollbar height="490px">
|
||||
<el-tree ref="treeRef" class="filter-tree" :data="type_data" node-key="id" highlight-current :props="defaultProps" empty-text="无数据" default-expand-all :filter-node-method="filter_node" @node-click="tree_node_event">
|
||||
<el-tree ref="treeRef" v-loading="tree_loading" class="filter-tree" :data="type_data" node-key="id" highlight-current :props="defaultProps" empty-text="无数据" default-expand-all :filter-node-method="filter_node" @node-click="tree_node_event">
|
||||
<template #default="{ node, data }">
|
||||
<div class="custom-tree-node flex-row jc-sb gap-10 align-c w pr-10" :class="data.is_enable == 0 || node.parent.data.is_enable == 0 ? 'disabled bg-red' : ''">
|
||||
<div class="flex-1 flex-width text-line-1 block">{{ data.name }}</div>
|
||||
|
|
@ -67,7 +67,7 @@
|
|||
</div>
|
||||
<div class="img-content pr">
|
||||
<!-- 574px -->
|
||||
<el-scrollbar height="440px">
|
||||
<el-scrollbar v-loading="img_loading" height="440px">
|
||||
<div v-if="upload_list.length > 0" class="flex-row flex-wrap align-c gap-y-15 gap-x-10 pa-10">
|
||||
<div v-for="(item, index) in upload_list" :key="index" class="item" @click="check_img_event(item)">
|
||||
<el-badge :value="view_list_value.findIndex((i) => i.id === item.id) == -1 ? '' : view_list_value.findIndex((i) => i.id === item.id) + 1" class="badge flex-col gap-5 w" :hidden="view_list_value.findIndex((i) => i.id === item.id) == -1">
|
||||
|
|
@ -360,16 +360,19 @@ const all_tree = {
|
|||
sort: '',
|
||||
};
|
||||
const type_data_list = ref<Tree[]>([]);
|
||||
const tree_loading = ref(false);
|
||||
// 查询分类列表
|
||||
const get_tree = (bool: boolean = false) => {
|
||||
if ((!upload_store.is_upload_api && upload_store.category.length === 0) || bool) {
|
||||
upload_store.set_is_upload_api(true);
|
||||
tree_loading.value = true;
|
||||
UploadAPI.getTree()
|
||||
.then((res) => {
|
||||
// 将all_tree和res.data.category_list全部插入到type_data.value,all_tree放在数组最前面
|
||||
type_data.value = [all_tree, ...res.data.category_list];
|
||||
type_data_list.value = res.data.category_list;
|
||||
upload_store.set_category(type_data_list.value);
|
||||
tree_loading.value = false;
|
||||
})
|
||||
.catch(() => {
|
||||
upload_store.set_is_upload_api(false);
|
||||
|
|
@ -411,7 +414,7 @@ const tree_node_event = (data: any, a: any, b: any) => {
|
|||
// 判断是否开启状态,如果关闭则不可操作
|
||||
// if (data.is_enable == 0) return;
|
||||
// 判断是否是子节点,如果不是子节点则不可操作
|
||||
if (data.items.length > 0) return;
|
||||
if (data.items && data.items.length > 0) return;
|
||||
category_id.value = data.id;
|
||||
get_attachment_list();
|
||||
};
|
||||
|
|
@ -436,10 +439,11 @@ const edit_type_event = (data: Tree) => {
|
|||
const remove_type_event = (node: any, data: Tree) => {
|
||||
app?.appContext.config.globalProperties.$common.message_box('删除后不可恢复,确定继续吗?', 'warning').then(() => {
|
||||
UploadAPI.delTree({ id: data.id }).then((res) => {
|
||||
const parent = node.parent;
|
||||
const children: Tree[] = parent.data.items || parent.data;
|
||||
const index = children.findIndex((d) => d.id === data.id);
|
||||
children.splice(index, 1);
|
||||
// const parent = node.parent;
|
||||
// const children: Tree[] = parent.data.items || parent.data;
|
||||
// const index = children.findIndex((d) => d.id === data.id);
|
||||
// children.splice(index, 1);
|
||||
get_tree(true);
|
||||
ElMessage({
|
||||
type: 'success',
|
||||
message: '删除成功!',
|
||||
|
|
@ -460,11 +464,13 @@ const data_total = ref(0);
|
|||
const search_name = ref('');
|
||||
// 已上传数据的列表
|
||||
const upload_list = ref<uploadList[]>([]);
|
||||
const img_loading = ref(false);
|
||||
// 附件列表
|
||||
const get_attachment_list = (type?: string) => {
|
||||
if (type) {
|
||||
page.value = 1;
|
||||
}
|
||||
img_loading.value = true;
|
||||
const new_data = {
|
||||
page: page.value,
|
||||
type: upload_type.value == 'img' ? 'image' : upload_type.value == 'video' ? 'video' : upload_type.value == 'file' ? 'file' : '',
|
||||
|
|
@ -475,6 +481,10 @@ const get_attachment_list = (type?: string) => {
|
|||
const data = res.data;
|
||||
data_total.value = data.data_total;
|
||||
upload_list.value = data.data_list;
|
||||
img_loading.value = false;
|
||||
// 清除选中
|
||||
check_img_ids.value = '';
|
||||
view_list_value.value = [];
|
||||
});
|
||||
};
|
||||
// 分页查询
|
||||
|
|
|
|||
|
|
@ -1,26 +1,17 @@
|
|||
<template>
|
||||
<el-popover v-model:visible="visible_dialog" placement="bottom" width="400" trigger="click">
|
||||
<template #reference>
|
||||
<div class="flex-row align-c gap-10 br-d radius-sm plr-11 value-input">
|
||||
<div class="flex-1 flex-width size-12 text-line-1">
|
||||
<text v-if="label">{{ label }}</text>
|
||||
<text v-else class="cr-9">{{ placeholder }}</text>
|
||||
</div>
|
||||
<el-input v-model="label" :placeholder="placeholder" @input="handle_input" @keydown.space.prevent="stop_visible_dialog_close" @keydown.enter.prevent="stop_visible_dialog_close">
|
||||
<template #suffix>
|
||||
<div class="value-input-icon">
|
||||
<template v-if="!label">
|
||||
<icon name="arrow-right" size="12" color="9"></icon>
|
||||
</template>
|
||||
<template v-else>
|
||||
<div @click.stop="clear_model_value">
|
||||
<icon name="close-o" size="12" color="c"></icon>
|
||||
<icon name="arrow-top" class="re icon" :class="!visible_dialog ? 'active' : ''" size="12" color="9"></icon>
|
||||
</div>
|
||||
</template>
|
||||
</div>
|
||||
</div>
|
||||
</el-input>
|
||||
</template>
|
||||
<div class="flex-col gap-10">
|
||||
<div>
|
||||
<el-cascader-panel v-model="cascader_val" :options="cascader_data" @change="cascader_change"></el-cascader-panel>
|
||||
<el-cascader-panel v-model="cascader_val" :options="new_cascader" @change="cascader_change"></el-cascader-panel>
|
||||
</div>
|
||||
<div class="flex-row jc-e">
|
||||
<el-button @click="visible_dialog = false">取消</el-button>
|
||||
|
|
@ -48,6 +39,11 @@ const props = defineProps({
|
|||
default: () => '',
|
||||
},
|
||||
});
|
||||
interface cascaderData {
|
||||
value: string;
|
||||
label: string;
|
||||
children?: cascaderData[];
|
||||
}
|
||||
// 使用计算属性获取级联数据
|
||||
const cascader_data = computed(() => {
|
||||
return props.data.map((tree) => ({
|
||||
|
|
@ -59,6 +55,7 @@ const cascader_data = computed(() => {
|
|||
})),
|
||||
}));
|
||||
});
|
||||
const new_cascader = ref<cascaderData[]>(cascader_data.value);
|
||||
const visible_dialog = ref(false);
|
||||
watch(
|
||||
() => visible_dialog.value,
|
||||
|
|
@ -99,6 +96,43 @@ const get_label = (item: any, val: any) => {
|
|||
}
|
||||
});
|
||||
};
|
||||
const handle_input = (val: any) => {
|
||||
// visible_dialog.value = true;
|
||||
// 过滤符合条件的数据
|
||||
if (val) {
|
||||
new_cascader.value = filterData(val, cascader_data.value);
|
||||
} else {
|
||||
new_cascader.value = cascader_data.value;
|
||||
}
|
||||
};
|
||||
const stop_visible_dialog_close = () => {
|
||||
if (visible_dialog.value) {
|
||||
visible_dialog.value = !visible_dialog.value;
|
||||
}
|
||||
};
|
||||
|
||||
const filterData = (input: string, data: cascaderData[]) => {
|
||||
let result = [];
|
||||
// 遍历数组
|
||||
for (let item of data) {
|
||||
// 检查当前项的name是否匹配
|
||||
if (item.label && item.label.includes(input)) {
|
||||
result.push(item);
|
||||
} else {
|
||||
if (item.children) {
|
||||
// 否则,检查当前项的data属性中的子项
|
||||
let subResult = item.children.filter((subItem) => subItem.label && subItem.label.includes(input));
|
||||
// 如果找到匹配的子项,将当前项(父级)添加到结果中
|
||||
if (subResult.length > 0) {
|
||||
result.push({ ...item, children: subResult });
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
return result;
|
||||
};
|
||||
|
||||
const emit = defineEmits(['call-back']);
|
||||
// 确定提交事件
|
||||
const confirm = () => {
|
||||
|
|
@ -134,12 +168,18 @@ const confirm = () => {
|
|||
line-height: 3.2rem;
|
||||
cursor: pointer;
|
||||
position: relative;
|
||||
.value-input-icon {
|
||||
}
|
||||
.value-input-icon {
|
||||
position: absolute;
|
||||
right: 0;
|
||||
width: 3.4rem;
|
||||
z-index: 1;
|
||||
text-align: center;
|
||||
.icon {
|
||||
transition: transform 0.3s;
|
||||
}
|
||||
.active {
|
||||
transform: rotate(-180deg);
|
||||
}
|
||||
}
|
||||
:deep(.el-cascader-menu) {
|
||||
|
|
|
|||
|
|
@ -17,7 +17,7 @@
|
|||
</el-form-item>
|
||||
<el-form-item label="上传至分组" prop="category_id">
|
||||
<div class="form-item-width">
|
||||
<el-cascader v-model="form.category_id" class="w" :options="cascader_data" placeholder="请选择" :show-all-levels="false" @change="category_id_change"></el-cascader>
|
||||
<el-cascader v-model="form.category_id" class="w" :options="cascader_data" placeholder="请选择" :show-all-levels="false" filterable clearable change="category_id_change"></el-cascader>
|
||||
</div>
|
||||
</el-form-item>
|
||||
<template v-if="form.type == 'loc'">
|
||||
|
|
@ -79,7 +79,7 @@
|
|||
</div>
|
||||
</el-scrollbar>
|
||||
<div v-show="is_dragging || form.file.length < 1" class="folder-upload mt-20" :class="is_dragging ? 'active' : ''">
|
||||
<el-upload ref="fileUpload2" v-model:file-list="file_list" :accept="exts_text" multiple action="#" :auto-upload="false" :show-file-list="false" :on-change="upload_change" :before-upload="before_upload" :limit="limit" :on-exceed="handle_exceed">
|
||||
<el-upload ref="fileUpload2" v-model:file-list="file_list" class="upload-2" :accept="exts_text" multiple action="#" :auto-upload="false" :show-file-list="false" :on-change="upload_change" :before-upload="before_upload" :limit="limit" :on-exceed="handle_exceed">
|
||||
<div class="flex-col jc-c align-c">
|
||||
<icon name="add" size="60" color="#dbeef6"></icon>
|
||||
<p class="size-18 cr-c fw">请将需要上传的文件/文件夹拖到此处或粘贴</p>
|
||||
|
|
@ -679,4 +679,12 @@ const close_dialog = () => {
|
|||
width: 33.5rem !important;
|
||||
}
|
||||
}
|
||||
.upload-2 {
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
:deep(.el-upload) {
|
||||
width: inherit;
|
||||
height: inherit;
|
||||
}
|
||||
}
|
||||
</style>
|
||||
|
|
|
|||
|
|
@ -3,12 +3,12 @@
|
|||
<el-form :model="form" label-width="70">
|
||||
<card-container class="mb-8">
|
||||
<div class="mb-12">颜色设置</div>
|
||||
<el-form-item label="选中文本">
|
||||
<color-picker v-model="form.text_color_checked" default-color="rgba(204, 204, 204, 1)" @update:value="text_color_checked_event" />
|
||||
</el-form-item>
|
||||
<el-form-item label="默认文本">
|
||||
<color-picker v-model="form.default_text_color" default-color="rgba(0, 0, 0, 1)" @update:value="default_text_color_event" />
|
||||
</el-form-item>
|
||||
<el-form-item label="选中文本">
|
||||
<color-picker v-model="form.text_color_checked" default-color="rgba(204, 204, 204, 1)" @update:value="text_color_checked_event" />
|
||||
</el-form-item>
|
||||
</card-container>
|
||||
</el-form>
|
||||
<common-styles :value="form.common_style" @update:value="common_styles_update" />
|
||||
|
|
|
|||
|
|
@ -2,16 +2,16 @@
|
|||
<div class="footer-nav flex-row jc-c align-c" :class="showFooter ? 'br-2 br-primary' : ''" @click="footer_nav_event">
|
||||
<div class="footer-nav-content flex-row jc-c align-c w" :style="style_container">
|
||||
<ul class="flex-row jc-sa align-c w">
|
||||
<li v-for="(item, index) in footerData?.content?.nav_content" :key="index" class="flex-1 flex-col jc-c align-c gap-5" @mouseenter="is_hover = index + 1" @mouseleave="is_hover = 0">
|
||||
<li v-for="(item, index) in footerData?.content?.nav_content" :key="index" class="flex-1 flex-col jc-c align-c gap-5" @mouseenter="is_hover = index" @mouseleave="is_hover = 0">
|
||||
<div v-if="footerData.content.nav_style !== '2'" class="img re">
|
||||
<div class="img-item abs radius-xs animate-linear w" :class="is_hover != index + 1 || (index !== 0 && is_hover != index + 1) ? 'active' : ''">
|
||||
<div class="img-item abs radius-xs animate-linear w" :class="is_hover != index ? 'active' : ''">
|
||||
<image-empty v-model="item.src[0]" error-img-style="width:1.5rem;height:1.5rem;"></image-empty>
|
||||
</div>
|
||||
<div class="img-item abs radius-xs animate-linear w" :class="is_hover == index + 1 || index == 0 ? 'active' : ''">
|
||||
<div class="img-item abs radius-xs animate-linear w" :class="is_hover == index ? 'active' : ''">
|
||||
<image-empty v-model="item.src_checked[0]" error-img-style="width:1.5rem;height:1.5rem;"></image-empty>
|
||||
</div>
|
||||
</div>
|
||||
<span v-if="footerData.content.nav_style !== '1'" class="animate-linear size-12 re z-i" :style="is_hover == index + 1 || index == 0 ? text_color_checked : default_text_color">{{ item.name }}</span>
|
||||
<span v-if="footerData.content.nav_style !== '1'" class="animate-linear size-12 re z-i" :style="is_hover == index ? text_color_checked : default_text_color">{{ item.name }}</span>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -30,7 +30,7 @@
|
|||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item label="显示数量">
|
||||
<el-input v-model="form.number" type="number" placeholder="请输入显示数量" clearable />
|
||||
<el-input v-model="form.number" type="number" min="1" max="50" placeholder="请输入显示数量" clearable />
|
||||
</el-form-item>
|
||||
<el-form-item label="排序类型">
|
||||
<el-radio-group v-model="form.sort">
|
||||
|
|
|
|||
|
|
@ -48,7 +48,7 @@
|
|||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item label="显示数量">
|
||||
<el-input v-model="row.number" type="number" placeholder="请输入显示数量" clearable />
|
||||
<el-input v-model="row.number" type="number" min="1" max="50" placeholder="请输入显示数量" clearable />
|
||||
</el-form-item>
|
||||
<el-form-item label="排序类型">
|
||||
<el-radio-group v-model="row.sort">
|
||||
|
|
|
|||
|
|
@ -1,6 +1,26 @@
|
|||
<template>
|
||||
<div :style="style_container">
|
||||
<div class="content re" :style="style_content"></div>
|
||||
<div class="content re" :style="style_content">
|
||||
<template v-if="theme == '1'">
|
||||
<div class="oh flex-row">
|
||||
<div class="coupon-theme-1">
|
||||
<div class="coupon-theme-1-content tc">
|
||||
<div class="name">满200元使用</div>
|
||||
<div class="price">
|
||||
<span class="size-9">¥</span>
|
||||
<span class="size-24 fw-b pl-4">30</span>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</template>
|
||||
<template v-else-if="theme == '2'"></template>
|
||||
<template v-else-if="theme == '3'"></template>
|
||||
<template v-else-if="theme == '4'"></template>
|
||||
<template v-else-if="theme == '5'"></template>
|
||||
<template v-else-if="theme == '6'"></template>
|
||||
<template v-else-if="theme == '7'"></template>
|
||||
</div>
|
||||
</div>
|
||||
</template>
|
||||
<script setup lang="ts">
|
||||
|
|
@ -24,9 +44,32 @@ watch(
|
|||
},
|
||||
{ immediate: true, deep: true }
|
||||
);
|
||||
const theme = computed(() => props.value?.content?.theme);
|
||||
</script>
|
||||
<style lang="scss" scoped>
|
||||
.content {
|
||||
height: 22rem;
|
||||
.coupon-theme-1 {
|
||||
background-color: #ff3830;
|
||||
width: 9rem;
|
||||
height: 9rem;
|
||||
border-radius: 1rem;
|
||||
margin-top: 1rem;
|
||||
gap: 3rem;
|
||||
.name {
|
||||
padding: 0.5rem;
|
||||
font-size: 1rem;
|
||||
color: #ff3830;
|
||||
}
|
||||
.price {
|
||||
color: #ff3830;
|
||||
padding: 1rem 0;
|
||||
}
|
||||
.coupon-theme-1-content {
|
||||
width: calc(100% - 1rem);
|
||||
margin: 0 0.5rem;
|
||||
background-image: url('../../assets/images/components/model-coupon/theme-1-bg.png');
|
||||
background-size: 100% 100%;
|
||||
position: relative;
|
||||
top: -1rem;
|
||||
}
|
||||
}
|
||||
</style>
|
||||
|
|
|
|||
|
|
@ -30,8 +30,10 @@ const default_config = {
|
|||
// 主题1时不显示
|
||||
limit_send_count: '#999',
|
||||
btn_background: [{ color: '#FF3830', color_percentage: undefined }],
|
||||
btn_direction: '90deg',
|
||||
btn_color: '#FF3830',
|
||||
background: [{ color: '#FFF1E1', color_percentage: undefined }],
|
||||
direction: '90deg',
|
||||
spacing: 20,
|
||||
},
|
||||
theme_2: {
|
||||
|
|
@ -41,9 +43,11 @@ const default_config = {
|
|||
// 主题2时不显示
|
||||
limit_send_count: '#999',
|
||||
btn_background: [{ color: '#FFF1E1', color_percentage: undefined }],
|
||||
btn_direction: '90deg',
|
||||
btn_color: '#fff',
|
||||
// 当为主题2时,不显示
|
||||
background: [{ color: '#fff', color_percentage: undefined }],
|
||||
direction: '90deg',
|
||||
spacing: 15,
|
||||
common_style: {
|
||||
background_img_url: [{ url: 'http://shopxo.com/static/upload/images/common/2024/08/28/1724815957918121.png' }],
|
||||
|
|
@ -55,8 +59,10 @@ const default_config = {
|
|||
desc_color: '#FF3830',
|
||||
limit_send_count: '#999',
|
||||
btn_background: [{ color: '#FF3830', color_percentage: undefined }],
|
||||
btn_direction: '90deg',
|
||||
btn_color: '#FF3830',
|
||||
background: [{ color: '#FFF1E1', color_percentage: undefined }],
|
||||
direction: '90deg',
|
||||
// 当为主题34时,间距不给予修改,优惠券沾满整行
|
||||
spacing: 0,
|
||||
},
|
||||
|
|
@ -67,8 +73,10 @@ const default_config = {
|
|||
// 主题4时不显示
|
||||
limit_send_count: '#999',
|
||||
btn_background: [{ color: '#fff', color_percentage: undefined }],
|
||||
btn_direction: '90deg',
|
||||
btn_color: '#FF3830',
|
||||
background: [{ color: '#FFF1E1', color_percentage: undefined }],
|
||||
direction: '90deg',
|
||||
// 当为主题34时,间距不给予修改,优惠券沾满整行
|
||||
spacing: 0,
|
||||
},
|
||||
|
|
@ -80,9 +88,12 @@ const default_config = {
|
|||
// 主题5时不显示
|
||||
limit_send_count: '#999',
|
||||
// 主题5时不显示
|
||||
btn_background: [{ color: '#fff', color_percentage: undefined }],
|
||||
btn_background: [{ color: '#fff', color_percentage: '' }],
|
||||
// 主题5时不显示
|
||||
btn_direction: '90deg',
|
||||
btn_color: '#fff',
|
||||
background: [{ color: '#FFF1E1', color_percentage: undefined }],
|
||||
background: [{ color: '#FFF1E1', color_percentage: '' }],
|
||||
direction: '90deg',
|
||||
spacing: 10,
|
||||
},
|
||||
theme_6: {
|
||||
|
|
@ -93,9 +104,12 @@ const default_config = {
|
|||
// 主题6时不显示
|
||||
limit_send_count: '#999',
|
||||
// 主题6时不显示
|
||||
btn_background: [{ color: '#fff', color_percentage: undefined }],
|
||||
btn_background: [{ color: '#fff', color_percentage: '' }],
|
||||
// 主题6时不显示
|
||||
btn_direction: '90deg',
|
||||
btn_color: '#fff',
|
||||
background: [{ color: '#FF3830', color_percentage: undefined }],
|
||||
background: [{ color: '#FF3830', color_percentage: '' }],
|
||||
direction: '90deg',
|
||||
spacing: 10,
|
||||
},
|
||||
theme_7: {
|
||||
|
|
@ -106,12 +120,15 @@ const default_config = {
|
|||
// 主题7时不显示
|
||||
limit_send_count: '#999',
|
||||
// 主题7时不显示
|
||||
btn_background: [{ color: '#E1B47A', color_percentage: undefined }],
|
||||
btn_background: [{ color: '#E1B47A', color_percentage: '' }],
|
||||
// 主题7时不显示
|
||||
btn_direction: '90deg',
|
||||
btn_color: '#fff',
|
||||
background: [
|
||||
{ color: '#FF3830', color_percentage: undefined },
|
||||
{ color: '#E1B47A', color_percentage: undefined },
|
||||
],
|
||||
direction: '90deg',
|
||||
spacing: 10,
|
||||
},
|
||||
},
|
||||
|
|
|
|||
|
|
@ -9,27 +9,27 @@
|
|||
<el-form-item label="名称">
|
||||
<color-picker v-model="form.name_color" :default-color="clone_form.name_color"></color-picker>
|
||||
</el-form-item>
|
||||
<template v-if="['1', '5', '6', '7'].includes(theme)">
|
||||
<template v-if="!['1', '5', '6', '7'].includes(theme)">
|
||||
<el-form-item label="描述">
|
||||
<color-picker v-model="form.desc_color" :default-color="clone_form.desc_color"></color-picker>
|
||||
</el-form-item>
|
||||
</template>
|
||||
<template v-if="['1', '2', '4', '5', '6', '7'].includes(theme)">
|
||||
<template v-if="!['1', '2', '4', '5', '6', '7'].includes(theme)">
|
||||
<el-form-item label="数量限制">
|
||||
<color-picker v-model="form.limit_send_count" :default-color="clone_form.limit_send_count"></color-picker>
|
||||
</el-form-item>
|
||||
</template>
|
||||
<template v-if="['2'].includes(theme)">
|
||||
<template v-if="!['2'].includes(theme)">
|
||||
<el-form-item label="背景">
|
||||
<mult-color-picker :value="form.background" :type="form.direction"></mult-color-picker>
|
||||
</el-form-item>
|
||||
</template>
|
||||
<template v-if="['3', '4'].includes(theme)">
|
||||
<template v-if="!['3', '4'].includes(theme)">
|
||||
<el-form-item label="间距">
|
||||
<slider v-model="form.spacing"></slider>
|
||||
</el-form-item>
|
||||
</template>
|
||||
<template v-if="['5', '6', '7'].includes(theme)">
|
||||
<template v-if="!['5', '6', '7'].includes(theme)">
|
||||
<el-form-item label="按钮背景">
|
||||
<mult-color-picker :value="form.btn_background" :type="form.btn_direction"></mult-color-picker>
|
||||
</el-form-item>
|
||||
|
|
|
|||
|
|
@ -132,7 +132,7 @@ watch(
|
|||
base_data.stats_number_weight = new_style.stats_number_weight;
|
||||
base_data.stats_number_size = new_style.stats_number_size;
|
||||
|
||||
style_container.value += common_styles_computer(new_style.common_style);
|
||||
style_container.value = common_styles_computer(new_style.common_style);
|
||||
}
|
||||
// 人物名称样式
|
||||
user_name_style.value = 'color:' + base_data.user_name_color + ';' + 'font-size:' + base_data.user_name_size + 'px;' + 'font-weight:' + base_data.user_name_weight + ';';
|
||||
|
|
|
|||
|
|
@ -96,27 +96,7 @@ import { omit } from 'lodash';
|
|||
const props = defineProps({
|
||||
value: {
|
||||
type: Object,
|
||||
default: () => {
|
||||
return {
|
||||
user_avatar_size: '60',
|
||||
user_name_color: 'rgba(0, 0, 0, 1)',
|
||||
user_name_weight: '500',
|
||||
user_name_size: 16,
|
||||
user_id_color_list: [{ color: 'rgba(254, 184, 143, 1)', color_percentage: undefined}, { color: 'rgba(255, 227, 220, 1)', color_percentage: undefined }],
|
||||
user_id_color: 'rgba(0, 0, 0, 1)',
|
||||
user_id_direction: '90deg',
|
||||
user_id_weight: '400',
|
||||
user_id_size: 10,
|
||||
img_size: '23',
|
||||
img_space: '25',
|
||||
stats_name_color: 'rgba(0, 0, 0, 1)',
|
||||
stats_name_weight: '400',
|
||||
stats_name_size: 12,
|
||||
stats_number_color: 'rgba(0, 0, 0, 1)',
|
||||
stats_number_weight: '500',
|
||||
stats_number_size: 16,
|
||||
};
|
||||
},
|
||||
default: () => {},
|
||||
},
|
||||
});
|
||||
const font_weight = reactive([
|
||||
|
|
|
|||
|
|
@ -44,7 +44,7 @@ const defaultCoupoin: DefaultCoupon = {
|
|||
background: [{ color: '#FFF1E1', color_percentage: undefined }],
|
||||
direction: '90deg',
|
||||
spacing: 10,
|
||||
common_style: defaultCommon,
|
||||
common_style: { ...defaultCommon, padding_left: 25, padding_right: 25, padding_top: 18, padding_bottom: 18 },
|
||||
},
|
||||
};
|
||||
|
||||
|
|
|
|||
Loading…
Reference in New Issue