Mithril Component Class

by András Parditka

HTML

<script src="https://cdnjs.cloudflare.com/ajax/libs/mithril/1.0.0/mithril.min.js"></script>
<div id="app"></div>

JavaScript

var App = {
	view: function() {
  	return [
    	m('b', 'Open the console!'),
    	m(VarComp),
      m(new ClassComp()),
      m('button', {
      	onclick: function() {}
      },
      	'Let’s update!'
      )
    ]
  }
}

var VarComp = {
	view: function() {
  	return (
    	m('div', 'Hi, I’m VarComp')
    )
  },
  oncreate: function() {console.log('VarComp oncreate')},
  onupdate: function() {console.log('VarComp onupdate')},
  onremove: function() {console.log('VarComp onremove')}
}

class ClassComp {
	view() {
  	return (
    	m('div', 'Hi, I’m ClassComp')
    )
  }
  oncreate() {console.log('ClassComp oncreate')}
  onupdate() {console.log('ClassComp onupdate')}
  onremove() {console.log('ClassComp onremove')}
}

m.mount(document.body, App)