JSFiddle - React, Tailwind, and code Playground

by rich_harris

HTML

<main></main>

<script id='template' type='text/ractive'>
    {{#each Array(1000) }}
        <foo message='{{message}}'/>
    {{/each}}
</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.foo = Ractive.extend({
    template: '<bar message="{{message}}"/>'
});

Ractive.components.bar = Ractive.extend({
    template: '<baz message="{{message}}"/>'
});

Ractive.components.baz = Ractive.extend({
    template: '{{message}}'
});

var task1 = 'init and render', task2 = 'update data';

console.time( task1 );
console.profile( task1 );
var ractive = new Ractive({
    el: 'main',
    template: '#template'
});
console.profileEnd( task1 );
console.timeEnd( task1 );

console.time( task2 );
console.profile( task2 );
ractive.set( 'message', 'hello' );
console.profileEnd( task2 );
console.timeEnd( task2 );