Share your code. npm Orgs help your team discover, share, and reuse code. Create a free org »

    snabbdom-to-htmlpublic

    Snabbdom to HTML

    Render Snabbdom Vnode’s to HTML strings

    Install

    With npm do:

    npm install snabbdom-to-html

    Usage

    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)
    // => <div style="color: red">The quick brown fox jumps</div>

    Advanced usage

    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.

    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)
    // => <div style="color: lime">over the lazy fox</div>

    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
    • style

    Support

    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.

    License

    MIT

    install

    npm i snabbdom-to-html

    Downloadslast 7 days

    879

    version

    5.1.0

    license

    MIT

    repository

    github.com

    last publish

    collaborators

    • avatar
    • avatar