Carregar arquivos em ordem específica com RequireJs

Eu sou novo no RequireJS e estou preso com a ordem de carregamento.

Eu tenho uma configuração de projeto global que eu preciso para ser carregado antes dos módulos localizados em js / app / *.

Aqui está minha estrutura:

index.html
config.js
js/
    require.js
    app/
        login.js
    lib/
        bootstrap-2.0.4.min.js

Aqui está o arquivo config.js:

var Project = {
    'server': {
        'host': '127.0.0.1',
        'port': 8080
    },
    'history': 10,      // Number of query kept in the local storage history
    'lang': 'en',       // For future use
};

E aqui está o meu arquivo requirejs (app.js):

requirejs.config({
    //By default load any module IDs from js/lib
    baseUrl: 'js/lib',
    //except, if the module ID starts with "app",
    //load it from the js/app directory. paths
    //config is relative to the baseUrl, and
    //never includes a ".js" extension since
    //the paths config could be for a directory.
    paths: {
        bootstrap: '../lib/bootstrap-2.0.4.min',
        app: '../app',
    },
    shim: {
        'app': {
            deps: ['../../config'],
            exports: function (a) {
                console.log ('loaded!');
                console.log (a);
            }
        } // Skual Config
    },
});

var modules = [];
modules.push('jquery');
modules.push('bootstrap');
modules.push('app/login');


// Start the main app logic.
requirejs(modules, function ($) {});

Mas algumas vezes, quando eu carrego a página, eu tenho um "Projeto" é indefinido, porque o login.js foi carregado ANTES de config.js.

Como posso forçar o config.js a ser carregado no começo, não importa o quê?

Nota: Eu vi order.js como um plugin para o RequireJS, mas aparentemente não é suportado desde a v2, substituído porshim.

Obrigado pela ajuda!

questionAnswers(3)

yourAnswerToTheQuestion