我的应用程序有一个小问题。我仅在使用 v-show 和 @focus 像这样聚焦输入时才显示搜索建议
//input
@focus="shouldShowSuggestions = true"
@blur="shouldShowSuggestions = false"
//suggestions div
v-show="shouldShowSuggestions"
当我专注于输入时,建议会正确显示,但当我尝试点击建议时,链接不会被点击,并且由于我有 @blur,建议会消失。
我知道这个问题,但我不确定如何处理它。有什么想法吗?
我用这个问题创建了一支笔,以防不清楚。 要重现,请专注于输入并尝试点击建议。
最佳答案
单击事件由鼠标按下和向上 Action 组成。输入将在鼠标按下时变得模糊,因此它将在点击事件发生之前隐藏。
尝试使用 mousedown
事件而不是 click
来更早地捕获它(但这可能不适用于触摸设备)。
或者,更好的是,您可以防止 mousedown
事件模糊焦点元素:
<a @mousedown.prevent @click="clickedElement">
关于Vue.js 输入建议在输入聚焦和@click 时可见,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50943833/