Frage

Also habe ich meine RequireJS-App mit erstellt grunzen-fordern, von dem ich glaube, dass er hinter den Kulissen RJS nutzt.Beim Ausführen der App erhalte ich jedoch jedes Mal Folgendes:

Uncaught Error: Module name "underscore" has not been loaded yet for context: _. Use require([])
http://requirejs.org/docs/errors.html#notloaded require-2.1.9.min.js:8
GET http://localhost:8080/resources/js/app/App.js 404 (Not Found) require-2.1.9.min.js:34
Uncaught Error: Script error for: app/App
http://requirejs.org/docs/errors.html#scripterror

Mein „Haupt“-Skript befindet sich in app/Main.js und sieht folgendermaßen aus:

require(['common'], function() {
    'use strict';

    require(['app/App'], function(app) {
        app.start();
    });
});

Und dann die Build-Optionen für grunt-require:

requirejs: {
    options: {
        baseUrl: 'resources/js',
        dir: 'resources/js/build',
        main: 'app/Main',
        out: null,
        optimize: 'uglify2',
        skipDirOptimize: true,
        priority: ['common'],
        preserveLicenseComments: false,
        modules: [
            {
                name: 'common'
            },{
                name: 'app/Main',
                exclude: ['common'],
                include: ['app/App']
            }
        ],
        paths: { ... },
        shim: { ... }
    }
}

Wie Sie sehen können, habe ich app/App in den Build von app/Main.js eingebunden.

Wie erwartet lädt es Main.js und common.js separat, versucht dann aber, app/App.js separat zu laden.Wenn ich mir die erstellte Version von Main.js ansehe, sehe ich, dass app/App.js tatsächlich integriert wurde.

Irgendwelche Ideen, warum versucht wird, app/App.js separat zu laden?

War es hilfreich?

Lösung

Es scheint, du hast es vergessen findNestedDependencies : true Option in Ihrer Build-Konfiguration und Ihre verschachtelte Anforderung wurde nicht geladen.Sehen Sie es Beschreibung.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top