react-json-view

react-json-view示例
// import the react-json-view component
import ReactJson from 'react-json-view'

// use the component in your app!
<ReactJson src={my_json_object} />
在Hooks中使用react-json-view
import React, { useState } from 'react';
import ReactJson from 'react-json-view';

interface IProps { }

const Index: React.FC<IProps> = (props) => {

  const reactJsonView = {
      "string": 'this is test ...',
      "integer": 42,
      'array': [1, 'two', NaN],
      'float': 3.14159,
      'undefined': undefined,
      'object': {},
      'string_number': '1234'
  }

  const [reactJson, setReactJson] = useState<object>(reactJsonView);

  const propsVal = {
      name: false, // JSON数据的根节点(用默认或指定的根节点包裹自己的数据)
      style: { wordBreak: 'break-all' }, // 换行
      src: { reactJson }, // 需要展示的JSON数据
      theme: 'rjv-default', // 支持base-16主题
      iconStyle: 'circle', // circle(圆)、triangle(三角形)、square(正方形)
      indentWidth: 6, // 首行缩进长度
      collapsed: 2, // 节点折叠
      collapseStringsAfterLength: false, // 超出内容会变成…的功能
      displayDataTypes: true, // 数据类型会出现在数据的前缀值
      displayObjectSize: true, // 对象和数组被标记为大
  }

  return <ReactJson {...propsVal} />
}

export default Index;
Demo展示
Demo展示
Props属性
Name Type Default Description
src JSON Object None 需要展示的JSON数据
name string or false "root" JSON数据的根节点(用默认或指定的根节点包裹自己的数据),使用null或false没有名字
theme string "rjv-default" RJV支持base-16主题
style object {} 可以通过style添加、修改样式,可覆盖主题默认提供的属性
iconStyle string "circle" 接受参数:circle(圆)、triangle(三角形)、square(正方形)
indentWidth integer 4 JSON嵌套对象的缩进值
collapsed boolean or integer false / number 默认情况下展开全部节点,当设置为true时,所有节点都将被折叠。使用整数值在特定深度折叠
collapseStringsAfterLength integer false 这个就是超出内容会变成…的功能。当一个整数值被赋值时,字符串就会在这个长度后面接上省略号。可以通过单击字符串值来展开和折叠字符串内容
shouldCollapse (field)=>{} false 回调函数来提供对默认情况下应该折叠的对象和数组的控制。对象被传递给包含name, src, type(“数组”或“对象”)和namespace
groupArraysAfterLength integer 100 当指定整数值时,数组将按值的计数分组显示。组以括号表示,可以通过单击括号展开和折叠
enableClipboard boolean or (copy)=>{} true 当prop不为false时,用户可以通过单击剪贴板图标将对象和阵列复制到剪贴板。支持复制回调
displayObjectSize boolean true 当设置为true,对象和数组被标记为大小。例如: { a: ‘a1’,b: ‘b1’ },会显示2 items
displayDataTypes boolean true 当设置为true,数据类型会出现在数据的前缀值.例如: { a: 123, b: ‘b1’},会显示{ a: int 123, b: string ‘b1’}
onEdit (edit)=>{} false 当传入回调函数时,edit功能已启用。在编辑完成之后调用回调
onAdd (add)=>{} false 当传入回调函数时,add功能已启用。在完成添加之后调用回调
defaultValue string / number / boolean / array / object null 设置将项添加到json时使用的默认值
onDelete (delete)=>{} false 当传入回调函数时,delete功能已启用。在完成删除之后调用回调
onSelect (select)=>{} false 当传入函数时,单击值将触发onSelect方法将被调用
sortKeys boolean false 设置为true以对对象键进行排序
quotesOnKeys boolean true 设置为false以删除键中的引号(例如“name”:vs.name:)
validationMessage string "Validation Error" OneEdit、onAdd或onDelete回调验证失败的自定义消息
displayArrayKey boolean true 当设置为true时,元素的索引前缀值
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 219,427评论 6 508
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 93,551评论 3 395
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 165,747评论 0 356
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 58,939评论 1 295
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 67,955评论 6 392
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 51,737评论 1 305
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 40,448评论 3 420
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 39,352评论 0 276
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 45,834评论 1 317
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,992评论 3 338
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 40,133评论 1 351
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,815评论 5 346
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 41,477评论 3 331
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 32,022评论 0 22
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 33,147评论 1 272
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 48,398评论 3 373
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 45,077评论 2 355

推荐阅读更多精彩内容