Skip to content

Latest commit

 

History

History
53 lines (39 loc) · 835 Bytes

README.md

File metadata and controls

53 lines (39 loc) · 835 Bytes

dust2jsx

Create JSX code from Dust template

<header>
  {@Logo name="foo" shadow="true"/}
</header>

{?title}
  <h1 class="title">{title}</h1>
{/title}

{#images}
  <img src="{src}">
{/images}

➡️

<header>
  <Logo name="foo" shadow="true"/>
</header>

{title ?
  <h1 className="title">{title}</h1>
 : null}

{images.map(item =>
  <img src="{item.src}">
)}

Usage

const dust2jsx = require('dust2jsx');

dust2jsx('<input type="checkbox" {?checked}checked{/checked}/>');
// Outputs: <input type="checkbox" {checked ? 'checked' : ''}/>

Parameters

externals

(Boolean)

Outputs array of found referenced variables or Components. Optional. Default: false

dust2jsc('<header><Logo shadow="true"/></header><Foo bar />', { externals: true });
// Outputs: ['Logo', 'Foo']