如果你只需要格式化展示并且不需要折叠,那么可以直接使用<pre>
标签来展示json字符串,但是单单使用这个还不行,你还需要把你格式化的字符串做处理。可能很多人知道JSON.stringify(str)
可以格式化字符串,但是很多人不知道其实JSON.stringify(str, replacer, space)
,即它有三个参数,MDN;
所以代码如下:
<template>
<div>
<pre>{{ str }}</pre>
</div>
</template>
<script>
export default {
data() {
return {
str: "",
};
},
mounted() {
let obj = {
name: "张三",
age: 18,
gender: "男",
child: [{ name: "张三", age: 18, gender: "男" }],
};
this.str = JSON.stringify(obj, null, 2);
},
};
</script>
但是可折叠却无法实现,当然它肯定是可以实现的,但是很麻烦而且你还需要做适配什么的,所以可以选择插件vue-json-viewer
我不知道你是原生还是Vue还是react,如果是其他的话你可以搜一下。
看你使用什么框架了。大概率是 React
或者 Vue
React
可以使用react-json-view
框架。
npm install -D react-json-view
import ReactJson from 'react-json-view'
<ReactJson src={jsonData} />
json-editor-vue
库,看Github更新蛮勤快的。monaco-editor
10 回答11.2k 阅读
5 回答4.8k 阅读✓ 已解决
4 回答3.1k 阅读✓ 已解决
2 回答2.8k 阅读✓ 已解决
3 回答4.9k 阅读✓ 已解决
1 回答3.2k 阅读✓ 已解决
3 回答1.5k 阅读✓ 已解决