@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"]}'

修改前

修改后

相关推荐
2301_781668615 小时前
前端基础 JS Vue3 Ajax
前端
上单带刀不带妹6 小时前
前端安全问题怎么解决
前端·安全
Fly-ping6 小时前
【前端】JavaScript 的事件循环 (Event Loop)
开发语言·前端·javascript
SunTecTec6 小时前
IDEA 类上方注释 签名
服务器·前端·intellij-idea
在逃的吗喽7 小时前
黑马头条项目详解
前端·javascript·ajax
袁煦丞7 小时前
有Nextcloud家庭共享不求人:cpolar内网穿透实验室第471个成功挑战
前端·程序员·远程工作
小磊哥er7 小时前
【前端工程化】前端项目开发过程中如何做好通知管理?
前端
拾光拾趣录7 小时前
一次“秒开”变成“转菊花”的线上事故
前端
你我约定有三8 小时前
前端笔记:同源策略、跨域问题
前端·笔记
JHCan3338 小时前
一个没有手动加分号引发的bug
前端·javascript·bug