Vue:Bin Code Editor格式化JSON编辑器

最终效果如下图所示,

Bin Code Editor安装

npm或yarn安装命令如下,

bash 复制代码
npm i bin-code-editor -S
# or 
yarn add bin-code-editor

组件注册

全局注册

在 main.js 中写入导入以下内容,

javascript 复制代码
import Vue from 'vue';
import CodeEditor from 'bin-code-editor';
import 'bin-code-editor/lib/style/index.css';

Vue.use(CodeEditor);

局部注册

在需要使用Bin Code Editor的组件中导入以下内容,

javascript 复制代码
import { CodeEditor } from 'bin-code-editor'
import 'bin-code-editor/lib/style/index.css';

export default {
    components: {
        CodeEditor
    },
}

使用方式

基本使用

value:必需,对应要转换的 JavaScript 值(通常为对象或数组),也可使用v-model代替,值的类型为String字符串,对于JavaScript对象,可以使用JSON.stringfy函数进行转换。

html 复制代码
<template>
<div>
  <b-code-editor v-model="jsonStr" :indent-unit="4" height="auto"/>
</div>
</template>
<script>
  const jsonData = `{"title":"测试json数据","children":[{"name":"子项名称", "desc":"子项说明" },{"name":"子项名称1", "desc":"子项说明1" }]}`

  export default {
    data() {
      return {
        jsonStr: jsonData
      }
    }
  }
</script>

组件属性

组件事件与方法

踩坑指南

坑点描述

修改v-model绑定值之后,需要点击一下编辑区才能显示。

坑点解决:nextTick

将修改绑定值的操作,放在nextTick内部执行,例如:

javascript 复制代码
                this.$nextTick(()=>{
                    //TODO:假设绑定值为query
                    this.query = JSON.stringify({...});//转为字符串
                });
相关推荐
Dxy12393102166 小时前
HTML常用布局详解:从基础到进阶的网页结构指南
前端·html
青衫客366 小时前
浅谈 Java 后端对象映射:从 JSON → VO → Entity 的原理与实践
java·json
ywf12158 小时前
前端的dist包放到后端springboot项目下一起打包
前端·spring boot·后端
恋猫de小郭8 小时前
2026,Android Compose 终于支持 Hot Reload 了,但是收费
android·前端·flutter
hpoenixf14 小时前
2026 年前端面试问什么
前端·面试
还是大剑师兰特14 小时前
Vue3 中的 defineExpose 完全指南
前端·javascript·vue.js
qqxhb14 小时前
11|结构化输出:为什么 JSON 能让系统更稳定
json·ai编程·结构化·规范模板
泯泷14 小时前
阶段一:从 0 看懂 JSVMP 架构,先在脑子里搭出一台最小 JSVM
前端·javascript·架构
mengchanmian15 小时前
前端node常用配置
前端
华洛15 小时前
利好打工人,openclaw不是企业提效工具,而是个人助理
前端·javascript·产品经理