//namespace dataUrl = "//jsonplaceholder.typicode.com/users"; var User = function(user){ user = user || {} this.name = m.prop(user.name ||''); } User.load = function(){ return m.request({ method: "GET", //background: true, url: dataUrl, type: User }) } UserWidget = { 'controller' : function(){ this.users = User.load(); }, 'view' : function(ctrl) { if (ctrl.users()) return m('.user', ctrl.users()[0].name()); } } //initialize m.module(document.body, UserWidget); //m.module(document.body, new UserWidget().header); //works fine