JSFiddle - React, Tailwind, and code Playground

HTML

<script src="https://rawgit.com/muut/riotjs/master/riot.min.js"></script>
<foo></foo>

JavaScript

console.clear()

riot.tag('foo', '<raw r="{rawString}"></raw>', function(opts) {
	this.rawString = "<b>Hello world</b>"
  
  setTimeout(function() { 
    this.rawString = '<i>Goodbye world</i>'
    this.update()
  }.bind(this), 4000)
})

riot.tag('raw', '<span></span>', function(opts) {   
    this.root.innerHTML = opts.r
    this.on('update', function() { this.root.innerHTML = opts.r })
})

riot.mount('foo')