This package contains utility functions for creating React HTML elements, without using JSX. It wraps React.createElement
in dedicated functions for each html tag, so you have shorter syntax and IDE suggestions.
Using NPM:
npm i react-plain
Using Yarn:
yarn add react-plain
/**
* You can also use default import, for example:
* import tags from 'react-plain
* import t from 'react-plain'
*/
import { __, a, div, h1, p } from 'react-plain'
const Hello = () => {
return h1(__, 'Hello React without JSX!')
}
const App = () => {
return div({ class: 'example' },
Hello(),
p(__, 'Simply use html tags as functions!'),
p(__, 'You can use __ instead of null'),
p(__,
'Check out the project repo: ',
a({ href: '//github.com/caderek/react-plain' }, 'click'),
),
)
}
Live example: https://stackblitz.com/edit/react-plain-example
API is very simple, instead of:
React.createElement('tag', props, ...children)
you get:
tag(props, ...children)
Additionally, the library exports __
constant, which is just null
, to use as a handy alternative for empty props.
Project is under open, non-restrictive ISC license.