React 文本溢出处理

在文字超出文本框限定区域的时候,我们一般要进行溢出处理,把多余的显示不下的文字用...代替,之前用js,css处理时候我们可以使用webkit属性进行css操作,例如

一行文本溢出 可以直接使用这三个属性
overflow: hidden;
text-overflow:ellipsis;
white-space: nowrap;
多行文本(

适用于WebKit浏览器及移动端),还有其他的结合js操作隐藏溢出元素的就不写啦

<!DOCTYPE html>
<html>
<head>
  <meta charset="utf-8">
  <meta name="viewport" content="width=device-width">
  <title>JS Bin</title>
</head>
<body>
<div style = 'width:400px;
              height:70px;
              border:1px solid black;'>
           <p style='display:-webkit-box; //将对象作为弹性伸缩盒子模型显示。

                    -webkit-box-orient:vertical; //从上到下垂直排列子元素

                  -webkit-line-clamp:2; //这个属性不是css的规范属性,需要组合上面两个属性,表示显示的行数。
                     overflow:hidden;'>
                 吧啦吧啦吧啦吧啦吧啦吧啦吧啦吧啦吧啦吧啦吧啦吧啦吧啦吧啦吧啦吧啦吧
             啦吧啦吧啦吧啦吧啦吧啦吧啦吧啦吧啦吧啦吧啦吧啦吧啦吧啦
         </p>
</div>
</body>
</html>
就是这个效果啦
搭配react实现

然而遇到react的时候 👿,并且上面那个方法兼容性也不是很好,然后就找到了如下方法💃
使用LinesEllipsisLinesEllipsis详细介绍

import LinesEllipsis from 'react-lines-ellipsis'
<LinesEllipsis text={你要用的文本} maxLine={3} 
ellipsis='...' trimRight basedOn='letters' />
点击阅读更多

轻松搞定✌️,然后结合state控制就也很方便实现类似点击阅读更多,收起的功能啦,根据state值控制maxLine的值例如 maxLine={showAllMsg ? 50 : 3}就ok啦

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 第一部分 HTML&CSS整理答案 1. 什么是HTML5? 答:HTML5是最新的HTML标准。 注意:讲述HT...
    kismetajun阅读 27,758评论 1 45
  • 前端开发面试题 <a name='preface'>前言</a> 只看问题点这里 看全部问题和答案点这里 本文由我...
    自you是敏感词阅读 786评论 0 3
  • 前端开发面试题 面试题目: 根据你的等级和职位的变化,入门级到专家级,广度和深度都会有所增加。 题目类型: 理论知...
    怡宝丶阅读 2,611评论 0 7
  • 2018/9/20记: 你一直说,自己没有玩伴,想要妈妈生个宝宝,可以陪你玩。 我说:“等妈妈生下宝宝来。你都长大...
    编生活边故事阅读 274评论 0 0
  • 序言 AOP (Aspect-oriented programming) 译为 “面向切面编程”,通过预编译方式和...
    路飞_Luck阅读 900评论 0 11