Marionette.js. View. Model Events

The modelEvents attribute passes through all the arguments that are passed to model.trigger('event', arguments). The modelEvents attribute can also take a function returning an object.

by marionettejs

HTML

<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/2.2.2/jquery.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/underscore.js/1.8.3/underscore-min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/backbone.js/1.3.3/backbone-min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/backbone.radio/2.0.0/backbone.radio.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/backbone.marionette/3.0.0/backbone.marionette.js"></script>

JavaScript

const { View } = Marionette; // import { View } from 'backbone.marionette';

const myModel = new Backbone.Model({title: 'Backbone.js'});

const MyView = View.extend({
  modelEvents: {
    'change:title': 'actOnChange'
  },
  
  actOnChange() {
    console.log(this.model.get('title'));
  }
});

const myView = new MyView({model:myModel});

myModel.set('title', 'Marionette.js')