使用json-editor-vue3(Json字段编辑器)

 更新时间:2025年01月24日 10:01:20   作者:满脑子技术的前端工程师  
文章介绍了如何在Vue3+Ts项目中使用json-editor-vue3插件,并解决了导入过程中遇到的模块识别问题,通过步骤说明和代码示例,展示了如何在项目中成功引入和使用该插件,并提供了一些常见参数和事件说明

前言

背景:在公司使用的中台项目中,有需要使用对Json数据进行编辑的场景,就想到了json编辑框插件!

最终找到了,这个插件json-editor-vue3,还有一些其他的插件比如:json-editor-vue,大致用法都是相同的,

提示:以下是本篇文章正文内容,下面案例可供参考

效果图如下

安装插件(这里很正常)

控制台执行:npm install json-editor-vue3安装插件

json-editor-vue3的使用步骤(这里遇到了问题)

1.导入json-editor-vue3

① 导入json-editor-vue3(问题出现)

执行

import JsonEditorVue from 'json-editor-vue3'

背景:我使用的项目是 Vue3+Ts 创建的项目,在导入 json-editor-vue3的时候出现了无法识别模块的问题.

  • 如下图所示:

② 解决 (无法找到模块的问题)

  • 第一种npm的方法行不通 不ok
  • 第二种新声明的方式是 ok 成功解决问题

具体如下图:

2.使用json-editor-vue3

① 步骤说明:

  • 1.在文件中导入 json-editor-vue3
  • 2.然后直接再temlate中使用就可以

② 编写代码如下:

<template>
    <button>点击我修改</button>
    <!-- modeList:可选的编辑模式列表 ["tree", "code", "form", "view"] -->
    <!-- currentMode:当前编辑模式(小写) -->
    <!-- v-model:绑定需要修改的值 -->
    <!-- update:modelValue:监听到修改的值发生变化 -->
    <JsonEditorVue v-model="jsonStr"
     :modeList="couldView"
     :currentMode="'tree'" 
     @update:modelValue="updateModelValue">
    </JsonEditorVue>

</template>


<script lang="ts" setup>
import { ref } from 'vue'

//1.导入json-editor-vue3
import JsonEditorVue from 'json-editor-vue3'

//2.定义修改的json字段的值,
const jsonStr = ref({ "key": "key", "value": "value" })


const couldView = ref(["tree", "code", "form", "view"])
const updateModelValue = (val: unknown) => {
    console.log(val,"修改了值");
}



</script>

③ 内容如下图所示:

总结: json-editor-vue3的Api说明

点击下方可跳转,github地址如下:

json-editor-vue3的文档说明

全局引入

import Vue from 'vue'
import JsonEditorVue from 'json-editor-vue3'

Vue.use(JsonEditorVue)

组件内引入

import JsonEditorVue from 'json-editor-vue3'

export default {
  name: 'app',
  components: {
    JsonEditorVue
  },
  data() {
    return {
      data: {
        "hello": "vue"
      }
    }
  },
  methods: {}
}

模板使用

<json-editor-vue class="editor" v-model="data" />

常见参数

对应的事件

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • 基于vue-seamless-scroll实现无缝滚动效果

    基于vue-seamless-scroll实现无缝滚动效果

    这篇文章主要为大家详细介绍了基于vue-seamless-scroll实现无缝滚动效果,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2022-04-04
  • Vue组件的Prop命名约定详解

    Vue组件的Prop命名约定详解

    这篇文章主要为大家介绍了Vue组件的Prop命名约定详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-08-08
  • 使用vue-touch报priority错误的解决

    使用vue-touch报priority错误的解决

    这篇文章主要介绍了使用vue-touch报priority错误的解决方案,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-03-03
  • Vue.js实现输入框清空功能的两种方式

    Vue.js实现输入框清空功能的两种方式

    Vue.js 是一个流行的前端框架,它提供了多种方法来实现数据的双向绑定和事件处理,在构建表单时,我们经常需要实现清空输入框的功能,本文将介绍两种在Vue中实现输入框清空功能的方法,感兴趣的小伙伴跟着小编一起来看看吧
    2024-12-12
  • vue-cli扩展多模块打包的示例代码

    vue-cli扩展多模块打包的示例代码

    本篇文章主要介绍了vue-cli扩展多模块打包的示例代码,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-04-04
  • Vue实现牌面翻转效果

    Vue实现牌面翻转效果

    这篇文章主要为大家详细介绍了Vue实现牌面翻转效果,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2021-07-07
  • Vue-cli集成axios请求出现CORS跨域问题及解决

    Vue-cli集成axios请求出现CORS跨域问题及解决

    这篇文章主要介绍了Vue-cli集成axios请求出现CORS跨域问题及解决方案,具有很好的参考价值,希望对大家有所帮助,
    2023-10-10
  • Vue3不支持Filters过滤器的问题

    Vue3不支持Filters过滤器的问题

    这篇文章主要介绍了Vue3不支持Filters过滤器的问题,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-09-09
  • 关于vue2强制刷新,解决页面不会重新渲染的问题

    关于vue2强制刷新,解决页面不会重新渲染的问题

    今天小编就为大家分享一篇关于vue2强制刷新,解决页面不会重新渲染的问题,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2019-10-10
  • Vue3组件挂载之创建组件实例详解

    Vue3组件挂载之创建组件实例详解

    这篇文章主要为大家介绍了Vue3组件挂载之创建组件实例详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-10-10

最新评论