vue3组件通过props传递数据如何拿到更新后的dom的问题?
解决方案
- 现在有这样一个需求就是一个显示框宽度固定内容超出隐藏并给出提示内容.
- 使用
dom的scrollWidth和dom的offsetWidth
通过判断他们之间的大小来进行是否省略隐藏,当然你也可以使用getBoundingClientRect api来获取dom的宽度
- 再用element-plus中的el-tooltip组件进行封装.
- 上面的方案是可行的,但问题在于如何动态的去监听dom的宽度来进行动态的省略隐藏,相信列为不比我差,我一开始就想的是在子组件中的updated钩子函数中去操作这个dom,可是事与愿违请看下面一张图片,这张图片的大概意思就是如果你需要在组件更新之后操作dom请使用nextTick().
文章插图
如何解决
- 问题是找到了但如何解决并且如何合理的使用
nextTick()
,至于nextTick()
的原理只说一个大概.
nextTick()
,在下次 DOM 更新循环结束之后执行延迟回调 。在修改数据之后立即使用这个方法 , 获取更新后的 DOM 。
- 既然updated中获取不到ref这个实例,我想的是
watch()
这个api一共有三个参数,我重点讲一讲第三个参数
- 第三个参数中除了
{deep: true,immediate:true}
这些属性以外还有一个属性就是
- 未来二年生猪价格走势
- 牛奶加糖会破坏营养吗,牛奶加糖后密度变化吗?
- 如果马琳执教孙颖莎会给她带来什么变化孙颖莎以后的对手是王曼昱吗
- 父母房产过户给子女新规定 房产过户政策有哪些变化
- 勇士不敌凯尔特人,火箭大胜猛龙,3月6日nba所有比赛都已结束,西部的排名有何变化
- PDD爆料RNG致命问题,只因这一点拿钱也买不到人,S10人员难有大变化,你怎么看
- 疫情结束,企业陆续复工,你或者身边人发生了哪些变化
- NO Y,Y(NPQ)变化是同步的嘛
- 烤面包温度低了会怎样,简述面包烘焙时的温度控制以及各温度下发生的变化
- 十二星座结婚统计图,12星座男结婚后最大的变化?