Javascript 截断两行中的名称列表
我想显示一个逗号分隔的名称列表,这些名称来自react组件中的数组。呈现的html类似于:Javascript 截断两行中的名称列表,javascript,css,reactjs,Javascript,Css,Reactjs,我想显示一个逗号分隔的名称列表,这些名称来自react组件中的数组。呈现的html类似于: <div> <span>Liza</span>, <span>Eric</span>, <span>Michael</span>, <span>Natalie</span>, <span>Stephan</span> <a href="#" clas
<div>
<span>Liza</span>, <span>Eric</span>, <span>Michael</span>, <span>Natalie</span>, <span>Stephan</span>
<a href="#" className="show-more hidden">and {remaining} more...</a>
</div>
莉莎,埃里克,迈克尔,娜塔莉,斯蒂芬
但是,此列表最多需要显示两行内容。如果列表超过2行,我需要显示隐藏的剩余名称的数量:
莉莎,埃里克
迈克尔-还有两个-
列表还必须具有响应性(如果我正在截断,则仅显示“X more”),并且我需要截断最后显示的名称末尾的列表,以便“和X more”文本在两行内
有人能推荐一种我应该采取的方法来解决这个问题吗?我相信纯CSS解决方案可能因为截断而无法工作
谢谢
PD我想要实现的目标的屏幕截图:
我想有(接近)纯CSS解决方案。但是,如果使用react,您可能会遇到如下情况:
可见性/不透明度
以隐藏元素ref
回调附加到每个项目:this.items.push(项目)}
componentDidMount()
中,迭代this.items
并汇总项目的宽度(item1.width+item2.width…)this.setState({truncate:true,remainingItemCount:x})
可见性设置回正常状态)