JSFiddle - React, Tailwind, and code Playground

by rich_harris

HTML

<div id='a'></div>
<div id='b'></div>

<script id='template' type='text/ractive'>
    <h2>{{title}}</h2>
    
    <widget>
        {{#partial foo}}
            <p>this is the foo partial. {{message}}</p>
        {{/partial}}
    </widget>
</script>

<script id='widget' type='text/html'>
    <p>we are inside &lt;widget/&gt;</p>
    {{yield foo}}
</script>

CSS

body {
    font-family: 'Helvetica Neue', arial, sans-serif;
    font-weight: 200;
    color: #353535;
}

h1, h2, h3, h4, h5, h6 {
    font-weight: 200;
}

.error {
    color: #d00;
    font-family: monospace;
}

JavaScript

Ractive.components.widget = Ractive.extend({
    template: '#widget',
    isolated: true
});

var Extended = Ractive.extend({
    template: '#template'
});

var a = new Extended({
    el: 'a',
    data: {
        title: 'extended',
        message: 'this does not appear to work...'
    }
});

var b = new Ractive({
    el: 'b',
    template: '#template',
    data: {
        title: 'simple',
        message: 'it is yielding correctly'
    }
});