https://github.com/mainframeos/react-json-parser
https://github.com/mainframeos/react-json-parser
Last synced: over 1 year ago
JSON representation
- Host: GitHub
- URL: https://github.com/mainframeos/react-json-parser
- Owner: MainframeOS
- License: mit
- Created: 2017-07-18T13:47:30.000Z (almost 9 years ago)
- Default Branch: master
- Last Pushed: 2017-12-07T13:35:06.000Z (over 8 years ago)
- Last Synced: 2025-02-12T16:52:40.974Z (over 1 year ago)
- Language: JavaScript
- Size: 7.81 KB
- Stars: 4
- Watchers: 2
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# react-json-parser
Transforms a JSX string to a JSON tree
## Installation
```sh
npm install react-json-parser
```
## CLI Usage
```sh
react-json-parser [options]
```
### Options
```
-h, --help output usage information
-V, --version output the version number
-f, --file JSX file to read, defaults to stdin if not set
-o, --output JSON destination file, defaults to stdout if not set
-p, --pretty pretty-print JSON
-a, --accept [component type] only accepts the specified component type, can be used multiple times
--no-plain-text do not allow plain-text children
```
When the `file` option is not provided, the JSX string is read from stdin, example:
```sh
echo '' | react-json-parser --pretty
```
## API usage
### parse(code, options)
Parses the provided `code` string using the supported `options`:
- `only: Array`: only accepts the provided components types, by default accepts any
- `plainText: boolean`: allow plain-text children, defaults to `true`
```js
const { parse } = require('react-json-parser')
const tree = parse(
'Hello ',
{
only: ['MyComponent', 'ChildComponent'],
plainText: false,
}
)
// tree = {type: 'MyComponent', props: {children: [{type: 'ChildComponent'}], test: true}}
```
## License
MIT