React中使用react-json-view展示JSON數(shù)據(jù)的操作方法
一、前言
react-json-view(RJV)是一個(gè)用于顯示和編輯javascript數(shù)組和JSON對(duì)象的React組件。
1.1、在線demo

1.2、Github倉(cāng)庫(kù)

二、實(shí)踐
2.1、安裝react-json-view
安裝插件,在這推薦大家在項(xiàng)目中用 yarn 安裝插件,yarn的出錯(cuò)幾率比npm低很多。
npm install --save react-json-view // 或者 yarn react-json-view
2.2、組件封裝
/**
* @Description: 格式化顯示json數(shù)據(jù) react-json-view
* @github https://github.com/mac-s-g/react-json-view
* @demo https://mac-s-g.github.io/react-json-view/demo/dist/
* @author 小馬甲丫
* @date 2023-12-06 01:26:47
*/
import ReactJsonView from 'react-json-view';
const ReactJson = (props) => {
return (
<ReactJsonView
name={false} // 根節(jié)點(diǎn)名字
collapsed={false} // 是否收起,true為收起
indentWidth={4} // 縮進(jìn)
iconStyle="triangle"
src={props.value}
theme="grayscale:inverted"
enableClipboard // 點(diǎn)擊向左箭頭進(jìn)行復(fù)制
displayObjectSize={false} // 顯示有多少個(gè)items屬性
displayDataTypes={false} // 顯示值的類(lèi)型
sortKeys // 鍵的排序
quotesOnKeys={false} // 是否顯示a鍵的引號(hào)
/>
);
};
export default ReactJson;2.3、效果
傳入的數(shù)據(jù)是數(shù)組,如下所示:

2.4、參數(shù)詳解 2.4.1、src(必須) :JSON Object
默認(rèn)值:無(wú)
需要展示的JSON數(shù)據(jù)
2.4.2、name:string或false
默認(rèn)值:root
JSON數(shù)據(jù)的根節(jié)點(diǎn)(用默認(rèn)或指定的根節(jié)點(diǎn)包裹自己的數(shù)據(jù)),使用null或false沒(méi)有名字
2.4.3、theme:string
默認(rèn)值:rjv-default
RJV支持base-16主題
2.4.4、style:object
默認(rèn)值:{}
可以通過(guò)style添加、修改樣式,可覆蓋主題默認(rèn)提供的屬性
2.4.5、iconStyle:string
默認(rèn)值:triangle
接受參數(shù):circle(圓)、triangle(三角形)、square(圓)
2.4.6、indentWidth:integer
默認(rèn)值:4
JSON嵌套對(duì)象的縮進(jìn)值
2.4.7、collapsed:boolean
默認(rèn)值:false
當(dāng)設(shè)置為true,默認(rèn)情況下,所有節(jié)點(diǎn)都將被折疊。使用整數(shù)值在特定深度折疊。
2.4.8、collapseStringsAfterLength:boolean
默認(rèn)值:false
這個(gè)就是超出內(nèi)容會(huì)變成…的功能。當(dāng)一個(gè)整數(shù)值被賦值時(shí),字符串就會(huì)在這個(gè)長(zhǎng)度后面接上省略號(hào)??梢酝ㄟ^(guò)單擊字符串值來(lái)展開(kāi)和折疊字符串內(nèi)容
2.4.9、shouldCollapse:(field)=>{}
默認(rèn)值:false
回調(diào)函數(shù)來(lái)提供對(duì)默認(rèn)情況下應(yīng)該折疊的對(duì)象和數(shù)組的控制。對(duì)象被傳遞給包含name, src, type(“數(shù)組”或“對(duì)象”)和namespace
2.4.10、displayObjectSize:boolean
默認(rèn)值:true
當(dāng)設(shè)置為true,對(duì)象和數(shù)組被標(biāo)記為大小。例如: { a: 'a1',b: 'b1' },會(huì)顯示2 items
2.4.11、displayDataTypes:boolean
默認(rèn)值:true
當(dāng)設(shè)置為true,數(shù)據(jù)類(lèi)型會(huì)出現(xiàn)在數(shù)據(jù)的前綴值.例如: { a: 123, b: 'b1'},會(huì)顯示{ a: int 123, b: string 'b1'}
2.4.12、onEdit:(edit)=>{}
默認(rèn)值:false
當(dāng)傳入回調(diào)函數(shù)時(shí),edit功能已啟用。在編輯完成之后調(diào)用回調(diào)。
2.4.13、onAdd:(add)=>{}
默認(rèn)值:false
當(dāng)傳入回調(diào)函數(shù)時(shí),add功能已啟用。在完成添加之后調(diào)用回調(diào)。
2.4.14、onDelete:(delete)=>{}
默認(rèn)值:false
當(dāng)傳入回調(diào)函數(shù)時(shí),delete功能已啟用。在完成刪除之后調(diào)用回調(diào)。
2.4.15、onSelect:(select)=>{}
默認(rèn)值:false
當(dāng)傳入函數(shù)時(shí),單擊值將觸發(fā)onSelect方法將被調(diào)用。
三、最后
到此這篇關(guān)于React中使用react-json-view展示JSON數(shù)據(jù)的文章就介紹到這了,更多相關(guān)react-json-view展示JSON數(shù)據(jù)內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
React中的Hooks路由跳轉(zhuǎn)問(wèn)題
這篇文章主要介紹了React中的Hooks路由跳轉(zhuǎn)問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2022-12-12
React學(xué)習(xí)之JSX與react事件實(shí)例分析
這篇文章主要介紹了React學(xué)習(xí)之JSX與react事件,結(jié)合實(shí)例形式分析了React中JSX表達(dá)式、屬性、嵌套與react事件相關(guān)使用技巧,需要的朋友可以參考下2020-01-01
React類(lèi)組件和函數(shù)組件對(duì)比-Hooks的簡(jiǎn)介
Hook?是?React?16.8?的新增特性,它可以讓我們?cè)诓痪帉?xiě)class的情況下,?使用state以及其他的React特性(比如生命周期,這篇文章主要介紹了React類(lèi)組件和函數(shù)組件對(duì)比-Hooks的介紹及初體驗(yàn),需要的朋友可以參考下2022-11-11
詳解如何在項(xiàng)目中使用jest測(cè)試react native組件
本篇文章主要介紹了詳解如何在項(xiàng)目中使用jest測(cè)試react native組件,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2018-02-02
react基于Ant Desgin Upload實(shí)現(xiàn)導(dǎo)入導(dǎo)出
本文主要介紹了react基于Ant Desgin Upload實(shí)現(xiàn)導(dǎo)入導(dǎo)出,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2024-01-01
React中實(shí)現(xiàn)組件通信的幾種方式小結(jié)
在構(gòu)建復(fù)雜的React應(yīng)用時(shí),組件之間的通信是至關(guān)重要的,從簡(jiǎn)單的父子組件通信到跨組件狀態(tài)同步,不同組件之間的通信方式多種多樣,下面我們認(rèn)識(shí)react組件通信的幾種方式,需要的朋友可以參考下2024-04-04

