fix(过滤组件): 外部参数匹配过滤选项时使用字符串比较避免类型不匹配

This commit is contained in:
wangjiahao
2026-06-09 15:29:14 +08:00
parent 798ea224a8
commit eb74b0945b

View File

@@ -282,7 +282,16 @@ const handleFieldIdDefaultChange = (val: string[]) => {
})
.then(res => {
options.value = (res || [])
.filter(ele => ele !== null)
.filter(ele => {
return (
ele !== null &&
((config.value.optionFilter &&
config.value.optionFilter.length > 0 &&
config.value.optionFilter.some(item => String(item) === String(ele))) ||
!config.value.optionFilter ||
config.value.optionFilter.length === 0)
)
})
.map(ele => {
return {
label: `${ele}`,
@@ -346,7 +355,7 @@ const handleFieldIdChange = (val: EnumValue) => {
return (
(config.value.optionFilter &&
config.value.optionFilter.length > 0 &&
config.value.optionFilter.includes(ele)) ||
config.value.optionFilter.some(item => String(item) === String(ele))) ||
!config.value.optionFilter ||
config.value.optionFilter.length === 0
)
@@ -691,7 +700,7 @@ const setOptions = (num: number) => {
ele !== null &&
((config.value.optionFilter &&
config.value.optionFilter.length > 0 &&
config.value.optionFilter.includes(ele)) ||
config.value.optionFilter.some(item => String(item) === String(ele))) ||
!config.value.optionFilter ||
config.value.optionFilter.length === 0)
)