json数据库编辑器(js json编辑器)

  • 1、react–实现简易json编辑器
  • 2、求JSON Viewer编辑器免安装版下载
  • 3、json精灵编辑器载入失败

分析

     由于个人不太喜欢一切皆props的形式,故想要做到一些公共api既可以在内部调用又可以对外部暴漏,类组件使用高阶/装饰器,函数组件使用hooks,我这里使用方式二,对外提供useEditor

     json预览

            通过原生标签的contentEditable属性可以实现在线json编辑    

            通过pre标签并利用JSON.stringify的参数3实现格式化预览  

            通过监听input事件实现编辑监听  

     树形编辑

            借用antd的tree组件快速实现树形ui展示

            将json字符串处理成treeData展示到tree组件,操作后在转成json反显到左侧预览区

            删除编辑能力通过将treeData这颗多叉树转为二叉树操作后再回退到多叉树进行回显

创建react项目

    create-react-app json-edit –template typescript

实现

     index作为入口文件,应当承载着所有内部接口对外暴漏的能力

        这里将json和editor组件以及useEditor暴漏出去

     json组件用于展示并编辑json字符串

        使用contentEditable开启编辑,利用pre+JSON.stringify({}, null, ‘ ‘)进行格式化,通过input事件监听json修改

     tree组件用于展示,并允许弹窗的形式删除或修改节点

        首先是json字符串转为多叉树后展示

    当存在节点编辑后,需要从节点删除或编辑,可以先将多叉树转成二叉树进行操作,后再转回多叉树, 之前实现过,就不重复写了

    最后就是将编辑后的多叉树再转回json字符串

效果如下

待优化的点

     预览时无法实时进行格式化处理,这是因为格式化操作光标位置会重置,需要不断进行记录并在格式化后重新设置

     编辑操作目前仅支持编辑最后一级节点

     删除操作会导致原json数据的顺序被修改,这主要是在生成的id值不正确,导致在二叉转多叉时排序不准

软件介绍:

JSON Viewer是一款非常实用的Json格式查看器。在日程开发调试中我们难免会遇到Json格式的数据需要解析阅读,但Json格式数据阅读性极差。

所需工具:点击下载 JSON Viewer编辑器

json view chrome插件

1、将下载好的插件进行安装,打开chrome – 扩展程序 (地址栏输入chrome://extensions/);

2、在chrome浏览器右上角工具栏中选中“开发模式”功能选项;

3、点击”加载正在开发的扩展程序…” – 选择插件目录(D:\Download\JSONView-for-Chrome-master\WebContent);

4、安装完成,重新加载(Ctrl+R)。

json精灵编辑器载入失败是文件损失。根据查询json失败公开解决方法得知,删除json精灵编辑器重新下载即可解决。.json是一种轻量级的数据交换格式,在与后端的数据交互中具有较为广泛的应用。

原创文章,作者:简单一点,如若转载,请注明出处:https://www.506064.com/n/126199.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
简单一点简单一点
上一篇 2024-10-03 23:07
下一篇 2024-10-03 23:07

相关推荐

  • JS Proxy(array)用法介绍

    JS Proxy(array)可以说是ES6中非常重要的一个特性,它可以代理一个数组,监听数据变化并进行拦截、处理。在实际开发中,使用Proxy(array)可以方便地实现数据的监…

    编程 2025-04-29
  • Python 常用数据库有哪些?

    在Python编程中,数据库是不可或缺的一部分。随着互联网应用的不断扩大,处理海量数据已成为一种趋势。Python有许多成熟的数据库管理系统,接下来我们将从多个方面介绍Python…

    编程 2025-04-29
  • openeuler安装数据库方案

    本文将介绍在openeuler操作系统中安装数据库的方案,并提供代码示例。 一、安装MariaDB 下面介绍如何在openeuler中安装MariaDB。 1、更新软件源 sudo…

    编程 2025-04-29
  • Polyphone音频编辑器基础入门教程

    Polyphone是一款免费的音频编辑器,可用于编辑.sf2和.sfz格式的音色库。本文将详细介绍Polyphone的基础操作及使用方法。 一、安装和简介 首先,我们需要下载并安装…

    编程 2025-04-29
  • JSON的MD5

    在Web开发过程中,JSON(JavaScript Object Notation)是最常用的数据格式之一。MD5(Message-Digest Algorithm 5)是一种常用…

    编程 2025-04-29
  • 数据库第三范式会有删除插入异常

    如果没有正确设计数据库,第三范式可能导致删除和插入异常。以下是详细解释: 一、什么是第三范式和范式理论? 范式理论是关系数据库中的一个规范化过程。第三范式是范式理论中的一种常见形式…

    编程 2025-04-29
  • 使用Java将JSON写入HDFS

    本篇文章将从以下几个方面详细阐述Java将JSON写入HDFS的方法: 一、HDFS简介 首先,先来了解一下Hadoop分布式文件系统(HDFS)。HDFS是一个可扩展性高的分布式…

    编程 2025-04-29
  • 解析js base64并转成unit

    本文将从多个方面详细介绍js中如何解析base64编码并转成unit格式。 一、base64编码解析 在JavaScript中解析base64编码可以使用atob()函数,它会将b…

    编程 2025-04-29
  • Node.js使用Body-Parser处理HTTP POST请求时,特殊字符无法返回的解决方法

    本文将解决Node.js使用Body-Parser处理HTTP POST请求时,特殊字符无法返回的问题。同时,给出一些相关示例代码,以帮助读者更好的理解并处理这个问题。 一、问题解…

    编程 2025-04-29
  • leveldb和unqlite:两个高性能的数据库存储引擎

    本文将介绍两款高性能的数据库存储引擎:leveldb和unqlite,并从多个方面对它们进行详细的阐述。 一、leveldb:轻量级的键值存储引擎 1、leveldb概述: lev…

    编程 2025-04-28

发表回复

登录后才能评论