最近公司做了一个词法分析的页面,新增了将后端查询到的词法数据以JSON格式展示到页面上,并且可以向用户提供拷贝以及展开的功能,于是就用到了vue-json-viewer这个插件。
基于vue写的小伙伴可以使用这个插件:
- //使用npm:
- $ npm install vue-json-viewer@2 --save
- // Vue2
- $ npm install vue-json-viewer@3 --save
- // Vue3
-
- //使用yarn:
- $ yarn add vue-json-viewer@2
- // Vue2
- $ yarn add vue-json-viewer@3
- // Vue3
基于React写的小伙伴可以使用这个插件:
npm install -D react-json-view
下面分别向大家展示实现的效果:
Vue:

React:

下面着重向大家展示在vue3基础上实现步骤:
1.安装vue-json-viewer插件
2.引入插件
这里大家可以选择全局引入插件或在单个vue文件内引入
- // main.js全局引入
- import Vue from 'vue'
- import JsonViewer from 'vue-json-viewer'
- Vue.use(JsonViewer)
-
- // 单个.vue文件内部引入
- import JsonViewer from 'vue-json-viewer'
3.使用插件
- <JsonViewer
- :value="resultWord" //对应你需要展示的json数据
- expanded //数据是否在页面展开
- :expand-depth="5" //搭配expended使用,表示默认在页面展开的数据深度
- copyable //显示右上角复制按钮
- boxed //为组件添加一个花哨的“盒装”样式(不需要边框就不要加)
- sort //显示前排序键
- theme="my-awesome-json-theme" // 为主题添加自定义 CSS 类
- >JsonViewer>
4.定义my-awesome-json-theme.scss文件引入,或直接在style内修改json展示的样式
- //1.在vue文件内部引入my-awesome-json-theme.scss文件
- import "@/assets/styles/my-awesome-json-theme.scss";
- //2.直接在