本文介绍vue3如何进行json数据pretty展示

1 vue3-json-viewer

1.1 安装
 npm install vue3-json-viewer --save
1.2 全局引入

在main.ts中引入,然后直接在组件中使用

import { createApp } from 'vue'
import App from './App.vue'
import JsonViewer from "vue3-json-viewer"

const app=createApp(App)
app.use(JsonViewer)
app.mount('#app')
<json-viewer :value="jsonData" copyable boxed sort></json-viewer>
1.3 局部引入

如果使用频率少,只在某个组件上使用,那么在单个组件上进行引入使用即可,选项式API使用如下方式。

<script>
import { JsonViewer } from "vue-json-viewer";
import "vue-json-viewer/style.css";
export default {
  components: {
    JsonViewer,
  },
}
</script>

组合式API语法糖形式直接导入即可使用

<script setup>
import { JsonViewer } from "vue3-json-viewer";
import "vue3-json-viewer/dist/index.css";
</script>

2 vue-json-pretty

​ 项目地址: vue-json-pretty

2.1 安装
npm install vue-json-pretty --save
yarn add vue-json-pretty
2.2引入使用

全局引入同上,仅演示局部引入方式.

<template>
  <div>
    <vue-json-pretty :data="{ key: 'value' }" />
  </div>
</template>

<script>
import VueJsonPretty from 'vue-json-pretty';
import 'vue-json-pretty/lib/styles.css';

export default {
  components: {
    VueJsonPretty,
  },
};
</script>

同样,组合式API语法糖形式直接引入即可使用

<script setup>
import VueJsonPretty from 'vue-json-pretty';
import 'vue-json-pretty/lib/styles.css';
</script>
2.3 Props

​ vue-json-pretty 基本属性

Property Description Type Default
data(v-model) JSON数据,支持v-model使用时可编辑 JSON object -
collapsedNodeLength 长度大于此阈值的对象或数组将被折叠 number -
deep 大于此深度的路径将被折叠 number -
showLength 显示折叠时的长度 boolean false
showLine 显示连接线 boolean true
showLineNumber 显示行号 boolean false
showIcon 显示图标 boolean false
showDoubleQuotes 在键上显示双引号 boolean true
virtual 使用虚拟滚动条 boolean false
height 使用virtual时列表的高度 number 400
itemHeight 使用virtual时节点的高度 number 20
selectedValue(v-model) 选择的数据路径 string, array -
rootPath 根节点路径 string root
nodeSelectable 定义节点是否支持选择 (node) => boolean -
selectableType 支持路径选择,默认无 multiple single
showSelectController 显示选择控制器 boolean false

我更喜欢使用vue-json-pretty,可定制性要好些。

Logo

DAMO开发者矩阵,由阿里巴巴达摩院和中国互联网协会联合发起,致力于探讨最前沿的技术趋势与应用成果,搭建高质量的交流与分享平台,推动技术创新与产业应用链接,围绕“人工智能与新型计算”构建开放共享的开发者生态。

更多推荐