@uiw/react-json-view 如何修改文本省略号、null节点、数组节点等

如何修改

  1. 当文本超过设置shortenTextAfterLength数值时,会显示...,可以通过新版本的参数 stringEllipsis来修改(ts类型不对可忽略),低版本可尝试修改JsonView.Ellipsis
  2. 当传入的数组值为null时(比如{a:null}),该组件值为空白,可通过自定义JsonView.Null修改
  3. 默认的数组显示,会显示索引+分号(比如0:'数组值'),可通过自定义JsonView.KeyName修改key,通过JsonView.Colon修改分号
js 复制代码
      <JsonView
        value={json}
        displayDataTypes={false}
        displayObjectSize={false}
        enableClipboard={false}
        collapsed={false}
        shortenTextAfterLength={5}
        stringEllipsis={'...显示更多'}
      >
        <JsonView.Null
          render={(props, result) => {
            if (result.value === null) {
              return <span {...props}>{result.value + ''}</span>
            }
          }}
        />
        <JsonView.KeyName
          render={(props, result) => {
            //数组不显示对应的索引
            if (Array.isArray(result.parentValue)) {
              return (
                <span {...props} style={{ ...props.style, display: 'none' }}>
                  {result.keyName}
                </span>
              )
            }
          }}
        />
        <JsonView.Colon
          render={(props, result) => {
            //数组不显示对应的分号 :
            if (Array.isArray(result.parentValue)) {
              return (
                <span {...props} style={{ ...props.style, display: 'none' }}>
                  :
                </span>
              )
            }
          }}
        />
      </JsonView>
  )

效果

当传入数据为'{"a":null, "b": ["val1","val2"]}'

修改前

修改后

相关推荐
C澒2 分钟前
IntelliPro 产研协作平台:基于 AI Agent 的低代码智能化配置方案设计与实现
前端·低代码·ai编程
一袋米扛几楼9812 分钟前
【Git】规范化协作:详解 GitHub 工作流中的 Issue、Branch 与 Pull Request 最佳实践
前端·git·github·issue
网络点点滴26 分钟前
前端与后端的区别与联系
前端
EnCi Zheng1 小时前
M5-markconv自定义CSS样式指南 [特殊字符]
前端·css·python
kyriewen1 小时前
你的网页慢,用户不说直接走——前端性能监控教你“读心术”
前端·性能优化·监控
广州华水科技1 小时前
北斗GNSS变形监测在大坝安全监测中的应用与优势分析
前端
前端老石人1 小时前
前端开发中的 URL 完全指南
开发语言·前端·javascript·css·html
CAE虚拟与现实1 小时前
五一假期闲来无事,来个前段、后端的说明吧
前端·后端·vtk·three.js·前后端
Sarvartha1 小时前
三目运算符
linux·服务器·前端
晓晨的博客1 小时前
ROS1录制的bag包转换为ROS2格式
前端·chrome