我有一些使用v-for渲染的元素 每个元素包含文本和按钮 只有当文本溢出div的高度时,我才需要显示按钮
{{ el.text }}
明显的解决方案是使用v-if,但我应该基于什么来判断? 我需要计算文本的高度,并决定是否显示按钮 因此,我需要使用refs来引用divs,并使用函数来确定是否显示:
{{ el.text }}
但我发现问题是items与DOM不同步。所以很明显,DOM是异步更新的,这就是为什么我的数据有点晚 所以我决定在我的showButton函数中添加nextTick(),但它开始返回Promise,这导致v-if始终为true
{{ el.text }}
那么有没有办法针对每个元素特定地显示或隐藏我的按钮呢?
我使用Vue中的watchers来完成了这个操作,希望能对你有所帮助!
而且脚本部分,我已经更新了输入部分: