React Refs in Mithril.js

by stephanhoyer

Level: beginner • Mithril.js Version: latest

This example shows how to access dom nodes of a component, much like Reacts refs.

Live Example

Dependencies

Type Name URL
scriptmithril@latesthttps://unpkg.com/mithril@latest

JavaScript

function findRef(dom, ref) {
  return dom.matches(`[ref=${ref}]`) ? dom : dom.querySelector(`[ref=${ref}]`)
}

const MyComponent = {
  oncreate(vnode) {
    const title = findRef(vnode.dom, 'title')
    title.style.color = 'red'
  },
  view() {
     return m('h1', { ref: 'title' }, 'abc')
  }
}

m.mount(document.body, MyComponent)

The snippet is using the most current version of Mithril.js framework. It is aimed at beginners and shows some basic recipes.

In addition to the Mithril.js hyperscript function m(), here we can see an example of Mithril.js' m.mount API method. It also shows, how Mithril.js' lifecycle methods can be used. This can be seen here by using the oncreate hook. In this example we can also see the usecase of Vnodes (virtual DOM nodes) which is a JavaScript data structure that describes a DOM tree.

The example was contributed by stephanhoyer and last modified on 26 October 2021. Click here to see more examples contributed by the author.

Contribute

If anyone has some improvements, that should be addressed, let me know by opening an issue. Or simply fork the repository on GitHub, push your commits and send a pull request. For starting your work, you can click the edit link below. Thanks for contributing.

See more code examples  •  Edit this example on GitHub