README.zh_CN.md

October 28, 2025 · View on GitHub

简体中文 | English

特性

  • 一个 JSON 美化工具
  • 使用 Typescript,提供类型描述 d.ts
  • 支持字段层级数据提取
  • 支持大数据虚拟滚动
  • 支持编辑

Props

属性说明类型默认值
data(v-model)源数据,注意不是 JSON 字符串JSON 数据对象-
indent缩进number2
collapsedNodeLength长度大于此阈值的对象或数组将被折叠numberInfinity
deep深度,大于该深度的节点将被折叠numberInfinity
showLength在数据折叠的时候展示长度booleanfalse
showLine展示标识线booleantrue
showLineNumber展示行计数booleanfalse
showIcon展示图标booleanfalse
showDoubleQuotes展示 key 名的双引号booleantrue
virtual使用虚拟滚动(大数据量)booleanfalse
height使用虚拟滚动时,定义总高度number400
itemHeight使用虚拟滚动时,定义节点高度(可为预估值)number20
dynamicHeight使用虚拟滚动时,开启每一行可为动态高度booleantrue
selectedValue(v-model)双向绑定选中的数据路径string, arraystring, array
rootPath定义最顶层数据路径stringroot
nodeSelectable定义哪些数据节点可以被选择function(node)-
selectableType定义选择功能,默认无multiple | single-
showSelectController展示选择器booleanfalse
selectOnClickNode支持点击节点的时候触发选择booleantrue
highlightSelectedNode支持高亮已选择节点booleantrue
collapsedOnClickBrackets支持点击括号折叠booleantrue
renderNodeKey渲染节点键,也可使用 #renderNodeKey({ node, defaultKey }) => vNode-
renderNodeValue自定义渲染节点值,也可使用 #renderNodeValue({ node, defaultValue }) => vNode-
renderNodeActions自定义渲染节点操作,也可使用 #renderNodeActionsboolean | ({ node, defaultActions }) => vNodefalse
editable支持可编辑booleanfalse
editableTrigger触发编辑的时机click | dblclickclick
theme主题色'light' | 'dark'light

Events

事件名称说明回调参数
nodeClick点击节点时触发(node: NodeData)
nodeMouseover悬浮节点时触发(node: NodeData)
bracketsClick点击括号时触发(collapsed: boolean, node: NodeData)
iconClick点击图标时触发(collapsed: boolean, node: NodeData)
selectedChange选中值发生变化时触发(newVal, oldVal)

Slots

| 插槽名 | 描述 | 参数 | | ----------------- | ------------ | ---------------------------------------------- | ----- | | renderNodeKey | 渲染节点键 | { node, defaultKey } | | renderNodeValue | 渲染节点值 | { node, defaultValue } | | renderNodeActions | 渲染节点操作 | boolean | ({ node, defaultActions }) => vNode | false |