Search code examples
javascriptjquerybackbone.jsmarionette

Marionette Module error


i just start learning Marionette and backbone i am getting this error i cant figure out

error

ReferenceError: userModule is not defined var collview = new userModule.collectionUserView({

code

$(function () {

    MyApp = new Backbone.Marionette.Application();

    MyApp.addRegions({
        mainRegion: "#content"
    });

    MyApp.module("usersModule", function(usersModule, MyApp, Backbone, Marionette, $, _){

        usersModule.singleModel = Backbone.Model.extend({});

        userCollection = Backbone.Collection.extend({
            model: usersModule.singleModel
        });

        usersModule.singleview = Backbone.Marionette.ItemView.extend({
            template: "#userlist",
            tagName: "tr",
            className: "cls-user-details"
        });

        usersModule.collectionUserView = Backbone.Marionette.CollectionView.extend({
            tagName: "table",
            id: "usertable-view",
            className: "user-record",
            template: "#usertable",
            itemView: usersModule.singleview,
            appendHtml: function (collectionView, itemView) {
                CollectionView.$('tbody').append(itemView.el);
            }
        });

        usersModule.addInitializer( function (options) {

            var collview = new userModule.collectionUserView({
                collection: data.d
            });

            MyApp.mainRegion.show(collview);

        });
    });

    MyApp.start();
});

i be would glad if someone can point me to the right direction thanks you.


Solution

  • Your module name is "usersModule" (plural) but when you instantiate the collection view you're referring to it as "userModule" (singular).