0.0.6 • Published 3 years ago

react-json-to-html v0.0.6

Weekly downloads
660
License
ISC
Repository
github
Last release
3 years ago

react-json-to-html

npm version

A simple React component that renders an HTML table from a JSON object.

Installation

npm install react-json-to-html --save

Usage

A simple example. Download and run the demo for more examples, or browse the examples here.

import React from 'react';
import {JsonTable} from 'react-json-to-html';

class Nested extends React.Component {
  const json = {
    "Server Name": "foo",
    "Description": "bar",
    "Specs": {
      "IP": "10.100.99.101",
      "MAC": "00:0a:XX:9F:XX:16"
    },
    "Date": "Jan 1, 2018"
  }
  render() {
    return (
      <JsonTable json={json} />
    )
  }
}

export default JsonTable;

alt tag

JsonTable props

NameTypeRequiredDefaultPossible ValuesDescription
jsonObjectYesundefinedAny valid JSON objectThe JSON that will get rendered as HTML table
cssObjectNosee the Css JSON belowCss as JSSome CSS attributes that can be overridden
indentIntegerNo3Any positive numberNumber of non breaking spaces for indentation of nested attributes

Css variables

The below CSS variables can be passed in as JS via the css prop. These are the default values, but can be overriden.

const Css = {
  jsonTr: {
    height: '25px'
  },
  jsonTd: {
    padding: '5px',
    borderSpacing: '2px',
    borderRadius: '5px'
  },
  rowSpacer: {
    height: '2px'
  },
  rootElement: {
    padding: '5px',
    borderSpacing: '2px',
    backgroundColor: '#BBBBBB',
    fontWeight: 'bold',
    fontFamily: 'Arial',
    borderRadius: '5px'
  },
  subElement: {
    padding: '5px',
    borderSpacing: '2px',
    backgroundColor: '#DDDDDD',
    fontWeight: 'bold',
    fontFamily: 'Arial',
    borderRadius: '5px'
  },
  dataCell: {
    borderSpacing: '2px',
    backgroundColor: '#F1F1F1',
    fontFamily: 'Arial',
    borderRadius: '5px'
  }
}

Download Examples

git clone https://github.com/grizzthedj/react-json-to-html.git
cd react-json-to-html
npm install
gulp demo
Browse http://localhost:8080

Backlog

  1. Add more props to control styling and CSS
  2. More tests
0.0.6

3 years ago

0.0.5

3 years ago

0.0.4

3 years ago

0.0.3

6 years ago

0.0.2

6 years ago

0.0.1

6 years ago