Edit in JSFiddle

var Button = {
    controller: function(){
    	this.active = false
    },
    view: function (state,attrs) {
        var onclick = function () {state.active = !state.active}
        return m("button", {onclick: onclick, style: state.active ? "color:red" : ""}, attrs.text)
    }
}

var button = m(Button, {text: "Inactive Button"})

var MainComponent = {
    view: function () {
        return [
            m(Button, {text: "Active Button"}),
            button
        ]
    }
}

m.mount(document.body, MainComponent)