vdom-to-html
Turn virtual-dom nodes into HTML
Installation
npm install --save vdom-to-html
Usage
var VNode = require('virtual-dom/vnode/vnode');
var toHTML = require('vdom-to-html');
toHTML(new VNode('input', { className: 'name', type: 'text' }));
// => '<input class="name" type="text">'
Special case for Widgets
Widgets are used to take control of the patching process, allowing the user to create stateful components, control sub-tree rendering, and hook into element removal. Documentation is available here.
Widgets are given an opportunity to provide a vdom representation through an optional render
method. If the render
method is not found an empty string will be used instead.
var Widget = function(text) {
this.text = text;
}
Widget.prototype.type = 'Widget';
// provide a vdom representation of the widget
Widget.prototype.render = function() {
return new VNode('span', null, [new VText(this.text)]);
};
// other widget prototype methods would be implemented
toHTML(new Widget('hello'));
// => '<span>hello</span>'