RequireJs: Utiliser le chargement automatique-deps avec cale

J'ai défini un RequireJs de configuration qui définit les chemins et les cales:

require.config({
    //define application bootstrap
    deps: ["main"],

    //define library shortcuts
    paths: {
        app: "app"
        , jquery: "lib/jquery"
        , underscore: "lib/underscore"
        , backbone: "lib/backbone"
        , bootstrap: "lib/bootstrap"
    },

    //define library dependencies
    shim: {
        jquery: {
            exports: "$"
        },
        underscore: {
            exports: "_"
        },
        backbone: {
            deps: ["underscore", "jquery"],
            exports: "Backbone"
        },
        bootstrap: {
            deps: ['jquery'],
            exports: "bootstrap"
        },

        //main application
        app: {
            deps: ["backbone"],
            exports: "App"
        }
    }
});

Comme vous le voyez le dernier "shim" déclaration devrait lui permettre d'accéder à la dorsale (et il deps), lorsque je charge l'Application principale (espace de noms).

En réalité, cela ne fonctionne pas:

require(["app"], function($, _, Backbone, App){
    app.router = new Backbone.Router.extend({
        //routing and route actions
    });
});

Ce fait, je me demande, c'est que dans la "colonne vertébrale-boilderplate"-projet, de la colonne vertébrale (et ses deps) sont à la disposition de cette façon:
https://github.com/tbranyen/backbone-boilerplate/blob/master/app/main.js

Le même pas eu à définir ce dans la fonction.

Donc ce que je fais mal?

essayez de supprimer le $, _, Backbone de la requirefonction de l'endroit où vous étendre le routeur. Je pense que les cales de travail de sorte qu'ils ont juste à l'exportation global des valeurs que vous n'avez pas besoin d'ajouter à tous les appels
Hey, qui fonctionne très bien 🙂 j'ai même pouvez déposer "l'épine dorsale" mot-clé dans le deps-tableau de la définition de la fonction, même si cela ne fonctionne pas dans chaque module... voulez-vous créer une réponse afin que je puisse fermer la question?
Fait, content d'avoir pu aider!

OriginalL'auteur dev.pus | 2012-07-09