6

Ich habe zu viel Zeit damit verschwendet. Ich bitte dich um Hilfe.Grunt require schafft nicht mehrere Module wie erwartet

Ich habe Struktur wie

  • App
    • Skripte
      • Libs
        • jquery.js
        • bootstrap.js
        • moment.js
      • app.js
      • vendor.js
      • common.js
      • app.config.js
      • main.js #require Config

Hinweis vendor.js ist nur eine Datei, die alle Dateien unter libs enthält. Ex

//vendor.js define(['jquery','bootstrap', 'moment'], function(){});

nur die Abhängigkeiten zur Liste aus:

  • app.js hängt von common.js und app.config.js
  • common.js hängt von vendor.js
  • app.config.js auf moment.js hängt

Was ich versuche todo läuft die Grunzen requirejs Befehl eine vendor.js-Datei mit allen Dateien unter libs/ und ein app.js mit dem Rest der Dateien in vendor.js

hier nicht enthalten zu schaffen ist, was aussieht meine requirejs Optionen wie

module.exports = function (grunt) { 
'use strict'; 
var config = { 
    dist: { 
     options: { 
      appDir: 'app/', 
      baseUrl: './scripts', 
      mainConfigFile: 'app/scripts/main.js', 
      dir: 'dist/scripts/', 
      modules: [ 
       { name: 'vendor'}, 
       { name: 'app', exclude: ['vendor'] } 
      ] 
     } 
    } 
}; 
grunt.config('requirejs', config); 

};

Was ich aus den oben ausgeführt ist die folgende build.txt

scripts/vendor.js 
---------------- 
scripts/libs/jquery.js 
scripts/libs/bootstrap.js 
scripts/libs/moment.js 
scripts/app.js 
scripts/vendor.js 
scripts/common.js 
scripts/app.config.js 

scripts/app.js 
---------------- 

Wie Sie alle Dateien sehen können, nur um vendor.js angehängt und nicht app.js. Ich würde außer vendor.js vendor.js und seine Abhängigkeiten einschließen. Und app.js um den Rest aufzunehmen, da vendor ausgeschlossen ist.

Jede Hilfe oder Hinweis würde sehr geschätzt werden. Ich habe zahlreiche Kombinationen ausprobiert und bin immer noch ein Nogo hier.

+0

Ich frage mich nur, warum verwenden Sie Grunt anstelle von Schluck oder Webpack? Warum folgen Sie nicht häufiger verwendeten Strukturen für Grunt-Dateien? – Pytth

+0

@Pythth Vorhandener Code, die Struktur, die ich ändern könnte, aber ich würde lieber mit minimalen Änderungen arbeiten, bevor ich alles Wichtige aktualisieren. Schätze den Kommentarmann. – dchhetri

+0

Np Mann! Ist das deine ganze Grunzfeile? – Pytth

Antwort

1

das Problem gefunden!Das Problem war mit meiner Require-Konfigurationsdatei, die an die grunt requirejs-Aufgabe weitergeleitet wird. Die Request-Konfigurationsdatei hatte deps: ['app'] Code, der bei dem Versuch, in Module aufgeteilt konflikt, weil, sobald die Anforderung Config feed der grunt requirejs Aufgabe war, sah es App als notwendige Abhängigkeit, was bedeutete app und alle seine Dateien wurden als abhängig markiert und somit in der ersten aufgelisteten Moduldatei enthalten.