使用json-editor-vue3(Json字段編輯器)
前言
背景:在公司使用的中臺(tái)項(xiàng)目中,有需要使用對(duì)Json數(shù)據(jù)進(jìn)行編輯的場(chǎng)景,就想到了json編輯框插件!
最終找到了,這個(gè)插件json-editor-vue3,還有一些其他的插件比如:json-editor-vue,大致用法都是相同的,
提示:以下是本篇文章正文內(nèi)容,下面案例可供參考
效果圖如下

安裝插件(這里很正常)
控制臺(tái)執(zhí)行:npm install json-editor-vue3安裝插件
json-editor-vue3的使用步驟(這里遇到了問(wèn)題)
1.導(dǎo)入json-editor-vue3
① 導(dǎo)入json-editor-vue3(問(wèn)題出現(xiàn))
執(zhí)行
import JsonEditorVue from 'json-editor-vue3'
背景:我使用的項(xiàng)目是 Vue3+Ts 創(chuàng)建的項(xiàng)目,在導(dǎo)入 json-editor-vue3的時(shí)候出現(xiàn)了無(wú)法識(shí)別模塊的問(wèn)題.
- 如下圖所示:

② 解決 (無(wú)法找到模塊的問(wèn)題)
- 第一種npm的方法行不通
不ok - 第二種新聲明的方式是
ok成功解決問(wèn)題
具體如下圖:

2.使用json-editor-vue3
① 步驟說(shuō)明:
- 1.在文件中導(dǎo)入 json-editor-vue3
- 2.然后直接再temlate中使用就可以
② 編寫(xiě)代碼如下:
<template>
<button>點(diǎn)擊我修改</button>
<!-- modeList:可選的編輯模式列表 ["tree", "code", "form", "view"] -->
<!-- currentMode:當(dāng)前編輯模式(小寫(xiě)) -->
<!-- v-model:綁定需要修改的值 -->
<!-- update:modelValue:監(jiān)聽(tīng)到修改的值發(fā)生變化 -->
<JsonEditorVue v-model="jsonStr"
:modeList="couldView"
:currentMode="'tree'"
@update:modelValue="updateModelValue">
</JsonEditorVue>
</template>
<script lang="ts" setup>
import { ref } from 'vue'
//1.導(dǎo)入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>
③ 內(nèi)容如下圖所示:

總結(jié): json-editor-vue3的Api說(shuō)明
點(diǎn)擊下方可跳轉(zhuǎn),github地址如下:
全局引入
import Vue from 'vue' import JsonEditorVue from 'json-editor-vue3' Vue.use(JsonEditorVue)
組件內(nèi)引入
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" />
常見(jiàn)參數(shù)

對(duì)應(yīng)的事件

總結(jié)
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
vue.js實(shí)現(xiàn)雙擊放大預(yù)覽功能
這篇文章主要為大家詳細(xì)介紹了vue.js實(shí)現(xiàn)雙擊放大預(yù)覽功能,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2020-06-06
Vue?ECharts實(shí)現(xiàn)機(jī)艙座位選擇展示功能代碼詳解
這篇文章主要介紹了Vue?ECharts實(shí)現(xiàn)機(jī)艙座位選擇展示,本文給大家分享一段簡(jiǎn)短的代碼通過(guò)效果圖展示給大家介紹的非常明白,需要的朋友可以參考下2022-05-05
elementUI組件中el-date-picker限制時(shí)間范圍精確到小時(shí)的方法
現(xiàn)在需要做一個(gè)時(shí)間選擇器,可以根據(jù)小時(shí)(同時(shí)選天和小時(shí))和天?和月,節(jié)假日等類(lèi)型控制日歷的選擇樣式,下面這篇文章主要給大家介紹了關(guān)于elementUI組件中el-date-picker限制時(shí)間范圍精確到小時(shí)的相關(guān)資料,需要的朋友可以參考下2023-04-04
Vue封裝DateRangePicker組件流程詳細(xì)介紹
在后端管理項(xiàng)目中使用vue來(lái)進(jìn)行前端項(xiàng)目的開(kāi)發(fā),但我們都知道Vue實(shí)際上無(wú)法監(jiān)聽(tīng)由第三方插件所引起的數(shù)據(jù)變化。也無(wú)法獲得JQuery這樣的js框架對(duì)元素值的修改的。而日期控件daterangepicker又基于JQuery來(lái)實(shí)現(xiàn)的2022-11-11
Vue3偵聽(tīng)器的實(shí)現(xiàn)原理詳情
這篇文章主要介紹了Vue3偵聽(tīng)器的實(shí)現(xiàn)原理詳情,文章圍繞主題展開(kāi)詳細(xì)的內(nèi)容介紹,具有一定的參考價(jià)值,需要的小伙伴可以參考一下2022-08-08
詳解基于vue-cli3快速發(fā)布一個(gè)fullpage組件
這篇文章主要介紹了詳解基于vue-cli3快速發(fā)布一個(gè)fullpage組件,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2019-03-03
簡(jiǎn)單聊聊Vue中的ref,toRef與toRefs
這篇文章主要是想和大家來(lái)簡(jiǎn)單聊聊Vue中的ref、toRef、toRefs這三個(gè)函數(shù)的使用與區(qū)別,文中的示例代碼講解詳細(xì),感興趣的小伙伴可以了解一下2023-04-04
vue three.js創(chuàng)建地面并設(shè)置陰影實(shí)現(xiàn)示例
這篇文章主要為大家介紹了vue three.js創(chuàng)建地面并設(shè)置陰影實(shí)現(xiàn)示例,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-08-08

