下拉框优化

This commit is contained in:
JenniferW 2025-12-22 10:26:00 +08:00
parent 01b64ea54a
commit 0c7f19c33f
1 changed files with 17 additions and 7 deletions

View File

@ -1458,17 +1458,27 @@ const fetchSearchHints = async (keyword) => {
};
}
// 3)只有值(如直接选了某个值,没有字段)
// 3)只有值(没有字段):需要区分是从下拉框选择的还是纯手输的
// 如果值在 allValues 中存在,说明可能是从下拉框选择的,放在 fieldValue 里
if (!condition.field && condition.value && !condition.fieldLabel) {
return {
fieldName: "",
fieldValue: condition.value,
keyword: "",
queryType: "FUZZY",
};
const isValueFromSuggestion = allValues.value.some(
(item) => String(item.value) === String(condition.value)
);
if (isValueFromSuggestion) {
// 从下拉框选择的值,放在 fieldValue 里
return {
fieldName: "",
fieldValue: condition.value,
keyword: "",
queryType: "FUZZY",
};
}
// 否则继续走方案4,放在 keyword 里
}
// 4)其它情况(例如纯手输、无法识别字段),作为关键字查询
// 纯手输的情况:没有 fieldLabel 和 field,应该放在 keyword 里
const keyword = condition.fieldLabel
? `${condition.fieldLabel}:${condition.value}`.replace(/:$/, "")
: condition.value;