优化选择建议
site-dist-deploy / build-and-deploy (push) Successful in 1m15s

This commit is contained in:
2026-01-07 00:11:52 -08:00
parent efafec56e0
commit 8153fdab79
+10 -2
View File
@@ -127,7 +127,12 @@ const handleKeyDown = (e: KeyboardEvent) => {
(activeIndex.value - 1 + suggestList.value.length) % suggestList.value.length (activeIndex.value - 1 + suggestList.value.length) % suggestList.value.length
} else if (e.key === 'Enter' && activeIndex.value !== -1) { } else if (e.key === 'Enter' && activeIndex.value !== -1) {
e.preventDefault() e.preventDefault()
selectSuggest(suggestList.value[activeIndex.value]) // 修复之前的 [object Object] 问题,确保传入的是 .full
selectSuggest(suggestList.value[activeIndex.value].full)
} else if (e.key === 'Tab' && activeIndex.value !== -1) {
// 💡 新增:按下 Tab 键时也自动补全
e.preventDefault()
selectSuggest(suggestList.value[activeIndex.value].full)
} }
} }
@@ -160,7 +165,10 @@ const selectSuggest = (fullSuffix: string) => {
const onBlur = () => { const onBlur = () => {
// 必须延迟,否则点击列表时会先触发 blur 导致列表消失无法选中 // 必须延迟,否则点击列表时会先触发 blur 导致列表消失无法选中
setTimeout(() => (isFocused.value = false), 200) setTimeout(() => {
isFocused.value = false
activeIndex.value = -1 // 重置索引
}, 200)
} }
// 3. 校验逻辑 // 3. 校验逻辑