marionettejs/backbone.marionette

Better error messages

Open

#2,795 opened on Oct 28, 2015

View on GitHub
 (9 comments) (0 reactions) (0 assignees)JavaScript (7,085 stars) (1,294 forks)batch import
discussionhelp wanted

Description

When I'm using Marionette, I'll occasionally make errors such as accessing a region that doesn't exist e.g.

var MyView = Marionette.LayoutView.extend({
  regions: {
    main: '.main-hook'
  },

  onRender: function() {
    this.showChildView('layout', someView());
  }
});

var view = new MyView();
view.getChildView('layout');

The exception I get comes from inside Marionette as a Cannot read property currentView of undefined or this.getRegion(..) is undefined. While I can chase the stacktrace back to find out the exact issue, it would be much better if I could get the following error:

LayoutError: 'layout' is not a region on MyView. The available regions are: 'main'

This is just to illustrate my point - if we have the information on why something isn't going to work we should tell the developer to save them time.

Contributor guide

Better error messages · marionettejs/backbone.marionette#2795 | Good First Issue