2013-04-30 38 views
0

我在學習Marionett,並試圖堅持核心和建設,而不是墊片marionett。這裏是我的要求配置:建立核心AMD構建Marionette Js的正確方法?

require.config({ 
    paths : { 
    backbone : 'lib/backbone', 
    underscore : 'lib/underscore', 
    jquery : 'lib/jquery', 
    marionette : 'lib/backbone.marionette', 
    'backbone.wreqr' : 'lib/backbone.wreqr', 
    'backbone.babysitter' : 'lib/backbone.babysitter', 
    hbs : 'lib/hbs', 
    Handlebars : 'lib/Handlebars' 
    }, 
    shim : { 
    jquery : { 
     exports : 'jQuery' 
    }, 
    underscore : { 
     exports : '_' 
    }, 
    backbone : { 
     deps : ['jquery', 'underscore'], 
     exports : 'Backbone' 
    } 
    }, 

    hbs: { 
    disableI18n: true, 

    disableHelpers: true 

    } 
}); 

我越來越骨幹是不明確的提線木偶的應用模塊中,當我創建一個應用程序模塊如下:

define(["marionette", "views/CatCompositeView"], function (Marionette, CatCompositeView) { 

    var app = new Marionette.Application(); 

    app.addRegions({ 
    mainRegion: '#content' 
    }); 

    app.addInitializer(function(options){ 
    var catCompositeView = new CatCompositeView({ 
     collection: options.cats 
    }); 

    app.mainRegion.show(catCompositeView); 

    }); 

    return app; 
}); 

任何想法?我能夠在提供木偶時提供所有工作,所以我現在可以確定,但希望單獨加載它。

更新:這是我怎麼會做這個我需要配置:

require.config({ 
    paths : { 
    backbone : 'lib/backbone', 
    underscore : 'lib/underscore', 
    jquery : 'lib/jquery', 
    marionette : 'lib/backbone.marionette', 
    'backbone.wreqr' : 'lib/backbone.wreqr', 
    'backbone.babysitter' : 'lib/backbone.babysitter', 
    hbs : 'lib/hbs', 
    Handlebars : 'lib/Handlebars' 
    }, 
    shim : { 
    jquery : { 
     exports : 'jQuery' 
    }, 
    underscore : { 
     exports : '_' 
    }, 
    backbone : { 
     deps : ['jquery', 'underscore'], 
     exports : 'Backbone' 
    }, 
    'backbone.wreqr': { 
     deps : ['backbone'] 
    }, 
    'backbone.babysitter': { 
     deps : ['backbone'] 
    } 
    }, 

    hbs: { 
    disableI18n: true, 

    disableHelpers: true 

    } 
}); 

回答

0

你需要墊片Backbone.Marionnette太:

marionette : { 
    deps: ["backbone", "underscore"], 
    exports: "Backbone.Marionette" 
} 
+0

我的工作方式是使用shim的方式,但是,在https://github.com/marionettejs/backbone.marionette/wiki/Using-marionette-with-requirejs下和高級用法,它似乎表明你不必這樣做。 – 2013-04-30 18:18:25

+0

@simon:對,就是這樣做的,但是對木偶的依賴關係是骨幹,wreqr和保姆,只要下劃線是骨幹的直接依賴 – zobidafly 2015-03-12 09:55:53

+0

@Kelly:「你不必這樣做」 ...但它的工作原理! – zobidafly 2015-03-12 09:58:32

0

見更新以上。我需要添加主幹作爲wreqr和保姆的依賴項來單獨加載它們。