前端实现展开收起的效果 (react)

需求背景:需要实现文本的展开收起效果,文本是一行一行的,数据格式是数组结构。

如图所示(图片已脱敏)

简单实现:使用一个变量控制展开收起效果。

展开收起逻辑部分(react)

javascript 复制代码
 const [fold, setFold] = useState(false);

  /** 展开收起 */
  const handleFold = () => {
    setFold(!fold);
  }

jsx 部分:

js 复制代码
 <Descriptions.Item label="证书备用名称">
    <>
       {
       	// 展开时展示全部数组内容,收起时只展示前5项
         (fold ? sansData : sansData.slice(0, 5)).map((item, index) => {
           return (
             <div key={index}>
             	{item}
             </div>
           )
         })
       }
       // 控制文本展示
       {sansData.length > 5 &&
         <div style={{ color: '#1890ff', cursor: 'pointer' }} onClick={handleFold}>
           {fold ? <span><UpOutlined />收起</span> : '... 查看全部'}
         </div>
       }
     </> 
</Descriptions.Item>
相关推荐
周凡1237 小时前
AI 时代的 Web JavaScript 逆向分析实践与思考
前端·javascript·人工智能
jerryinwuhan8 小时前
marker BiBERTo解释
java·前端·人工智能
zhoumeina998 小时前
分段创建产品,tab 页切换又要保留缓存
前端·javascript
SilentSamsara8 小时前
命令行工具开发:Click/Typer + 打包为独立二进制
linux·服务器·开发语言·前端·python·青少年编程·fastapi
恋猫de小郭8 小时前
能在手机本地跑的图像生成模型 Bonsai Image ,效果还不错
前端·aigc·ai编程
Bigger8 小时前
实战:搭建 AI Code Review 自动化流水线
前端·ci/cd·自动化运维
IT_陈寒8 小时前
被Vite的HMR坑惨了,原来这样配置才能用对!
前端·人工智能·后端
怕浪猫8 小时前
Electron 开发实战(七):网络通信与 API 集成全解
前端·javascript·electron
凌览8 小时前
为什么我不推荐一人公司用PostgreSQL
前端·后端·node.js
王琦03188 小时前
shell 第二章 变量和引用
前端·chrome