search组件的bug

来源:11-8 searchBar:搜索历史处理

zippen

2023-01-10

图片描述
点击hint组件里面的搜索词条,下拉区不会消失这个bug怎么解决呢?
已知下拉区的消失条件是焦点消失,
但是下拉区设置了slot插槽,导致hint组件中点击了词条,下拉区根本不会消失;
hit组件又不能让下拉区的焦点消失,因为这个是在插槽里面的组件,所以不知道怎么跟父组件通讯?有什么好的解决办法吗?我唯一想到比较简单的就是不用slot,这样就可以直接让focus为false,但是这个hint组件在slot里面,我就不知道应该怎么办了?
简单来说问题就是:
slot里面的组件hint怎么控制slot的父组件名为slide的template?让它里面的isFocus等于false?
图片描述

写回答

2回答

别人都说我可帅

2023-04-01

可以在 子组件 defineExpose把 isFocus 导出来,然后 在父组件里面 用 ref 标记,之后在点击事件里面 把isFocus改掉即可

1
0

Sunday

2023-01-10

你好

这里我觉得不应该是一个技术问题,而应该是一个业务问题。

从业务来看,是否需要点击 item 的时候,让下拉框消失。

如果确实希望让下拉框消失的话,那么可以在触发 search 行为之后,强制隐藏下拉框(isFocus = false)

0
0

基于 Vue3 ,打造前台+中台通用开发提效解决方案

42 种前台常见业务模型, 15 种中台通用组件,成为前端提效高手

788 学习 · 517 问题

查看课程