Render Snabbdom Vnodes to HTML strings
npm install snabbdom-to-htmlRender Snabbdom Vnode’s to HTML strings
With npm do:
``bash`
npm install snabbdom-to-html
`js
var h = require('snabbdom/h')
var toHTML = require('snabbdom-to-html')
var output = toHTML(
h('div', { style: { color: 'red' } }, 'The quick brown fox jumps')
)
console.log(output)
// =>
$3
This library is built replicating the modular approach used in Snabbdom. So you can do the following if you need to implement any custom functionality.
`js
var h = require('snabbdom/h')var init = require('snabbdom-to-html/init')
var modules = require('snabbdom-to-html/modules')
var toHTML = init([
modules.class,
modules.props,
modules.attributes,
modules.style
])
var output = toHTML(
h('div', { style: { color: 'lime' } }, 'over the lazy fox')
)
console.log(output)
// =>
over the lazy fox
`The
init function accepts an array of functions (modules). Modules have the following signature: (vnode, attributes) => undefined, where attributes is an ES2015 Map instance.You can do
attributes.set(key, value), attributes.get(key) and attributes.delete(key) and so on. You can check out the built-in modules to get the idea.The built-in modules are available from
snabbdom-to-html/modules, and these are:-
attributes
- class
- props
- styleSupport
This is tested against Node.js 4.x and up. If you need to run this in the browser you might need to include something like
es6-shim to ensure Map` support. MIT