1.Text组件文字过长,支持换行和截断两种方式。其中截断省略方式,需要展示悬浮提示框。
如何实现一个通用的悬浮提示框是我遇到的一个难点。当鼠标靠近文字是,出现悬浮提示框,远离时,悬浮提示框消失。
经过一番的查阅资料,最后决定实现一个通用的钩子函数,去展示提示框。
将钩子函数定义为useTipBoxRef,传入一个参数,参数是表示要展示的文本内容,
初始化一个useRef的钩子,其中ref绑定悬浮的内容div
初始化一个dispaly的钩子,表示是否展示悬浮框
通过ref.current.getBoundingClientRect()获取悬浮内容div的left和top位置,也可以获取到文本的高度,计算得出悬浮框应处于的位置,最后通过事件监听鼠标是否在需要悬浮的位置,若在的话,将display设为true,展示悬浮提示,若不在则将display设为false,这个就是我的整体思路。
前端开发中遇到的困难汇总
最新推荐文章于 2023-08-13 17:52:39 发布