0.1.0 • Published 10 years ago
kneejerk v0.1.0
kneejerk
KneeJerk is a minimal utility for server side React rendering. KneeJerk is server framework agnostic. You simply pass in a react-router configuration and URL, and KneeJerk renders the HTML using react-router. You can optionally pass in a root component to wrap the router output in order to achieve full page rendering.
const KneeJerk = require('kneejerk');
KneeJerk({
root: require('your-html-wrapper.jsx'),
routes: require('your-routes-file.jsx'),
location: '/dashboard'
}, (err, results) => {
reply(results.markup);
});Methods
KneeJerk exports a single function, described below.
kneeJerk(options, callback)
- Arguments
options(object) - A configuration object supporting the following keys.location(string) - The URL path to match in the react-router. Required.routes(object) - The routes configuration passed to the react-router.render(string) - The react-dom rendering function. This can be set tonullto disable rendering. Defaults to'renderToStaticMarkup'.root(function) - A react component used to wrap the rendered output. This is used to create a complete server rendered page. This can be explicitly set tonullto prevent adding a wrapper. Defaults tonull.rootDoctype(string) - ADOCTYPEto prepend to therootrendering. Defaults to'<!DOCTYPE html>'.rootMarkupProp(string) - The property named used to pass rendered markup to therootcomponent for wrapping. Defaults to'markup'.
callback(function) - A callback function receiving the following arguments.err(object) - ABoomerror representing any problem that occurs. If no match is made by the router, this will contain aBoom404 error. This will benullif no error occurs.results(object) - An object containing the following keys.redirectLocation(object) - An object containing information about a potential redirection. This comes directly from the react-router output.renderProps(object) - An object containing the props you should pass to the routing context. This comes directly from the react-router output.markup(string) - The rendered output of the matched route, or therootrendering if one was provided. If there is no rendered output for any reason, this will benull.
- Returns
- Nothing. See arguments passed to
callback.
- Nothing. See arguments passed to
0.1.0
10 years ago