Render ES6 React components as hexo templates
$ npm install hexo-renderer-react react react-dom --save
This requires you to have react
installed as well.
.jsx
extensionexport default
or module.exports =
your component classbabel
Version 6
.babelrc
Config file preset requirements:layout.jsx
import React from 'react';
export default class extends React.Component {
render() {
return (
<html>
<head>
<title>{this.props.page.title}</title>
</head>
<body>
<main dangerouslySetInnerHTML={{__html: this.props.page.body}} />
</body>
</html>
);
}
}
post.jsx
import React from 'react';
export default class extends React.Component {
render() {
return (
<div>
<h3>POST: {this.props.page.title}</h3>
<div>{this.props.page.date.toString()}</div>
</div>
)
}
}
This software is free to use under the MIT license. See the LICENSE-MIT file for license text and copyright information.