Die erstellte RequireJS-App wird nicht geladen
-
22-12-2019 - |
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?
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.