Component Pojo Counter

by osban

Level: beginner • Mithril.js Version: latest

This is a Counter component example based on a plain old JavaScript object (POJO). State is handled via the vnode.state property, which is available to all lifecycle methods as well as the view method of a component.

Live Example


Type Name URL


const pojo = {
  oninit: v => {v.state.count = 0},
  view: v =>
      m('h1', `Count: ${v.state.count}`),
      m('button', {onclick: () => v.state.count++}, "+"),
      m('button', {onclick: () => v.state.count--}, "-")

m.mount(document.body, pojo)

The snippet requires the latest version of Mithril.js framework. It is ideal for beginners showing some basic recipes.

In this example we can see an example of Mithril.js' m.mount API method, besides it core m() hyperscript function. It is also showing the oninit hook, which is one of several Mithril.js' lifecycle methods.

The code sample was authored by osban. It was last modified on 24 September 2020. Want to see more examples written by osban? Then Click here.


Do you see some improvements, that could be addressed here? Then let me know by opening an issue. As an alternative, you can fork the repository on GitHub, push your commits and send a pull request. To start your work, click on the edit link below. Thank you for contributing to this repo.

See more code examples  •  Edit this example on GitHub