新增数据链接字段

v1.1.0
于肖磊 2024-11-13 18:46:34 +08:00
parent 40fbb414b4
commit 794064e4ad
3 changed files with 43 additions and 6 deletions

View File

@ -22,7 +22,12 @@
</el-select>
</el-form-item>
<el-form-item label="链接">
<url-value v-model="form.icon_link"></url-value>
<url-value v-model="form.icon_link" @update:model-value="link_change('1')"></url-value>
</el-form-item>
<el-form-item label="数据链接">
<el-select v-model="form.data_source_link" value-key="id" clearable filterable placeholder="请选择数据链接字段" size="default" class="flex-1" @change="link_change('2')">
<el-option v-for="item in options.filter((item) => item.type == 'icon')" :key="item.field" :label="item.name" :value="item.field" />
</el-select>
</el-form-item>
<el-form-item label="图标颜色">
<color-picker v-model="form.icon_color" default-color="#FF3F3F"></color-picker>
@ -130,7 +135,13 @@ const icon_change = (key: string) => {
form.value.data_source_id = '';
}
};
const link_change = (key: string) => {
if (key == '2') {
form.value.icon_link = '';
} else {
form.value.data_source_link = '';
}
};
const mult_color_picker_event = (arry: color_list[], type: number) => {
form.value.color_list = arry;
form.value.direction = type.toString();

View File

@ -22,7 +22,12 @@
</el-select>
</el-form-item>
<el-form-item label="链接">
<url-value v-model="form.link"></url-value>
<url-value v-model="form.link" @update:model-value="img_link_change('1')"></url-value>
</el-form-item>
<el-form-item label="数据链接">
<el-select v-model="form.data_source_link" value-key="id" clearable filterable placeholder="请选择数据链接字段" size="default" class="flex-1" @change="img_link_change('2')">
<el-option v-for="item in options.filter((item) => item.type == 'icon')" :key="item.field" :label="item.name" :value="item.field" />
</el-select>
</el-form-item>
<el-form-item label="图片圆角">
<radius :value="form.img_radius" @update:value="img_radius_change"></radius>
@ -96,7 +101,7 @@ const img_radius_change = (radius: any) => {
const border_radius_change = (radius: any) => {
form.value.border_radius = Object.assign(form.value.border_radius, pick(radius, ['radius', 'radius_top_left', 'radius_top_right', 'radius_bottom_left', 'radius_bottom_right']));
};
//
const img_src_change = (key: string) => {
if (key == '2') {
form.value.img = [];
@ -104,6 +109,14 @@ const img_src_change = (key: string) => {
form.value.data_source_id = '';
}
}
//
const img_link_change = (key: string) => {
if (key == '2') {
form.value.link = '';
} else {
form.value.data_source_link = '';
}
}
// x
const location_x_change = (val: number) => {

View File

@ -22,7 +22,12 @@
</el-select>
</el-form-item>
<el-form-item label="链接">
<url-value v-model="form.text_link"></url-value>
<url-value v-model="form.text_link" @update:model-value="text_link_change('1')"></url-value>
</el-form-item>
<el-form-item label="数据链接">
<el-select v-model="form.data_source_link" value-key="id" clearable filterable placeholder="请选择数据链接字段" size="default" class="flex-1" @change="text_link_change('2')">
<el-option v-for="item in options.filter((item) => item.type == 'icon')" :key="item.field" :label="item.name" :value="item.field" />
</el-select>
</el-form-item>
<el-form-item label="富文本">
<el-switch v-model="form.is_rich_text" active-value="1" inactive-value="0" />
@ -151,7 +156,7 @@ onBeforeMount(() => {
form.value.line_text_size = form.value.text_size;
}
});
//
const text_change = (key: string) => {
if (key == '2') {
form.value.text_title = '';
@ -159,6 +164,14 @@ const text_change = (key: string) => {
form.value.data_source_id = '';
}
};
//
const text_link_change = (key: string) => {
if (key == '2') {
form.value.text_link = '';
} else {
form.value.data_source_link = '';
}
};
//
const text_size_change = (size: number) => {
form.value.line_text_size = size;