#header-mark#
JSONEditor JSON编辑器
JSONEditor组件提供了一个可视化编辑器,用于编辑JSON可序列化的数据结构,如Python字典和列表,具有不同编辑模式、插入对象和使用JSON Schema进行验证的功能。
底层实现为panel.widgets.JSONEditor
,参数基本一致,参考文档:https://panel.holoviz.org/reference/widgets/JSONEditor.html
基本用法
JSON编辑器提供了一个直观的界面来查看和编辑JSON数据。
编辑模式
JSON编辑器有多种模式,提供不同的查看和编辑JSONEditor.value
的方式。注意,要启用对mode='code'
的支持,必须使用pn.extension('ace')
加载ace编辑器。
验证
JSONEditor通过提供JSON Schema可以对value
进行验证。JSON Schema描述了JSON对象必须具有的结构,如必需的属性或值必须具有的类型。更多信息请参见 http://json-schema.org/。
API
属性
属性名 | 说明 | 类型 | 默认值 |
---|---|---|---|
disabled | 是否禁用编辑器(等同于设置 mode='view') | bool | False |
menu | 是否显示主菜单栏(包含格式、排序、转换、搜索等功能) | bool | True |
mode | 编辑器模式:'view'(只读)、'form'(仅值可修改)、'tree'(树)、'text'(纯文本)、'preview'(预览大文件) | str | 'tree' |
search | 是否在右上角显示搜索框(仅在 tree/view/form 模式下可用) | bool | True |
schema | 用于验证JSON数据的JSON模式(定义必需属性和值类型等) | dict | None |
value | 当前可编辑的JSON数据结构 | str | "" |
Events
事件名 | 说明 | 类型 |
---|---|---|
change | 当JSON数据改变时触发 | Callable |
Controls
src/examples/panel_vuepy/widgets/JSONEditor