|
|
@ -36,6 +36,7 @@ const pagination = reactive({
|
|
|
|
pageSize: 300,
|
|
|
|
pageSize: 300,
|
|
|
|
});
|
|
|
|
});
|
|
|
|
const keyword = ref("");
|
|
|
|
const keyword = ref("");
|
|
|
|
|
|
|
|
const currentlySelectedAdvanced = ref("高级筛选");
|
|
|
|
|
|
|
|
|
|
|
|
onMounted(() => {
|
|
|
|
onMounted(() => {
|
|
|
|
// data.value = generateDefaultConfig()
|
|
|
|
// data.value = generateDefaultConfig()
|
|
|
@ -138,9 +139,22 @@ function generateFilterEntityList(data) {
|
|
|
|
|
|
|
|
|
|
|
|
return filterEntityList;
|
|
|
|
return filterEntityList;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
|
|
|
* 提取服务器返回 HTML 中文字内容,进行拼接
|
|
|
|
|
|
|
|
* @param {string} str 包含 HTML 标签的字符串,例如 "<span style='color:#FF0000'></span>1<span style='color:#FF0000'></span>"
|
|
|
|
|
|
|
|
* @returns {string} 返回拼接后的不包含 HTML 标签的字符串,例如 "11"
|
|
|
|
|
|
|
|
*/
|
|
|
|
|
|
|
|
function extractTextFromHTML(str) {
|
|
|
|
|
|
|
|
// 定义正则表达式匹配模式
|
|
|
|
|
|
|
|
const regex = /<span style='color:#FF0000'><\/span>|<span style='color:#FF0000'>(.*?)<\/span>/g;
|
|
|
|
|
|
|
|
// 使用正则表达式的 replace 方法进行匹配和替换
|
|
|
|
|
|
|
|
const result = str.replace(regex, '');
|
|
|
|
|
|
|
|
return result;
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
function selectHandler(item: FilterEntity) {
|
|
|
|
function selectHandler(item: FilterEntity) {
|
|
|
|
(popover.value as any).setShow(false);
|
|
|
|
(popover.value as any).setShow(false);
|
|
|
|
|
|
|
|
currentlySelectedAdvanced.value = extractTextFromHTML(item.name)
|
|
|
|
emit("select", item.id);
|
|
|
|
emit("select", item.id);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
@ -226,7 +240,7 @@ const moveEnd = () => {
|
|
|
|
>
|
|
|
|
>
|
|
|
|
<template #trigger>
|
|
|
|
<template #trigger>
|
|
|
|
<div class="wrapper-left-dropdown" @click="showClick">
|
|
|
|
<div class="wrapper-left-dropdown" @click="showClick">
|
|
|
|
<span style="font-size: 20px;color: #333333;font-weight: Medium;">高级筛选</span>
|
|
|
|
<span style="font-size: 20px;color: #333333;font-weight: Medium;">{{currentlySelectedAdvanced}}</span>
|
|
|
|
<SvgIcon :style="{ marginLeft: '5px' }" name="down" size="14" />
|
|
|
|
<SvgIcon :style="{ marginLeft: '5px' }" name="down" size="14" />
|
|
|
|
</div>
|
|
|
|
</div>
|
|
|
|
</template>
|
|
|
|
</template>
|
|
|
|