vue项目中使用json编辑器

实现效果:

借助插件json-editor-vue3实现效果如图一,如果嫌丑可以通过类名改一下样式如图二。

实现过程:

安装插件:npm install json-editor-vue3

文档链接:GitCode - 开发者的代码家园

javascript 复制代码
<script setup name="dataPreView">
import JsonEditorVue from 'json-editor-vue3';
// 数据是否在加载中
let dataLoading = $ref(false);
let dataSql = $ref('');
// json配置
const couldView = $ref(['tree', 'code', 'form', 'view', 'text']);
// json修改
const updateModelValue = (val) => {
    console.log(val, '修改了值');
};
</script>

<template>
    <div v-loading="dataLoading">
        <JsonEditorVue
            v-model="dataSql"
            class="myJsonEditor"
            style="height: 580px"
            :modeList="couldView"
            currentMode="code"
            @update:model-value="updateModelValue"
        ></JsonEditorVue>
    </div>
</template>
<style lang="less">
.myJsonEditor {
    .jsoneditor-menu > .jsoneditor-modes > button,
    .jsoneditor-menu > button {
        background-color: #6284ff;
    }
    .jsoneditor-menu > .jsoneditor-modes > button:hover,
    .jsoneditor-menu > button:hover {
        background-color: #6284ff;
    }
    .jsoneditor-menu > .jsoneditor-modes > button:focus,
    .jsoneditor-menu > button:focus {
        background-color: #6284ff;
    }
    .jsoneditor-menu {
        background-color: #ecf0fd;
        border-bottom: none;
    }
    .jsoneditor {
        border: 1px solid #dae3ff;
    }
    .ace-jsoneditor .ace_gutter {
        background-color: #f7f7f7;
    }
    .jsoneditor-statusbar {
        background-color: #f7f7f7;
        border-top: 1px solid #dae3ff;
    }
    .full-screen {
        background-color: #6284ff;
    }
    .jsoneditor-poweredBy {
        color: #6284ff;
    }
    .ace_gutter-cell.ace_error,
    .ace_icon.ace_error,
    .ace_icon.ace_error_fold {
        background-image: url(../imgs/task/inputClose.png);
        background-size: 14px 14px;
    }
    .ace-jsoneditor .ace_marker-layer .ace_active-line {
        background: #fafafa;
    }
    .jsoneditor-statusbar {
        display: none;
    }
}
</style>

参考文档:

json-editor-vue3 (Json字段编辑器 )-CSDN博客

【前端】Vue项目中 JSON 编辑器的使用_vue json 编辑器-CSDN博客

相关推荐
计算机毕设定制辅导-无忧学长7 小时前
《基于SpringBoot青年公寓出租管理系统的设计与实现》
java·vue.js·spring boot·青年公寓出租管理系统
宿6749 小时前
vue3-config
前端·javascript·vue.js
ShineWinsu12 小时前
对于 Vue 3:从为什么学 Vue,到声明式渲染与数据响应式的解析
前端·javascript·vue.js
leoZ23113 小时前
第 6 篇:SchemaForm 渲染器核心实现
前端·javascript·vue.js·人工智能·神经网络·机器学习·自然语言处理
谢斯14 小时前
[unity]如何在unity中添加newtonsoft-json
unity·json·游戏引擎
还是大剑师兰特14 小时前
vue项目浏览器版本判别,低于IE11跳转到新页面
前端·javascript·vue.js
BillKu16 小时前
vue3 字符串排序 localeCompare,确保排序为 “B01“, “B10“, “B2“
前端·javascript·vue.js
Nayana17 小时前
《Web 到 HarmonyOS》-- 第一课:前端经验哪些能带走
vue.js·harmonyos
ShineWinsu17 小时前
对于 Vue 3:开发前需要掌握的 JavaScript 核心基础:从变量、数组方法到 Promise、Async/Await 与 ES Module 的解析
javascript·vue.js·elasticsearch
雪芽蓝域zzs18 小时前
第十七节:面包屑导航组件(适配多级嵌套路由)
前端·javascript·vue.js