<div id="Super app">
  <button id="click"></button>
  <button id="see">What is the state?</button>
</div>
class Controller {
  constructor(id) {
    this.view = document.getElementById(id);
    this.view.onclick = () => this.state = 'You already did!';
    this.state = 'Click me!';
  }

  get state() {
    return this._state;
  }

  set state(state) {
    this.view.innerHTML = String(state);
    this._state = state;
  }
}

const what = document.getElementById('see');
const ctrl = new Controller('click');

what.onclick = () => alert(`The state is: ${ctrl.state}`);

External CSS

This Pen doesn't use any external CSS resources.

External JavaScript

This Pen doesn't use any external JavaScript resources.