5
Dies funktioniertWarum kann ich (...) nicht in einer Schleife mit browserify anfordern?
require('./AppCtrl');
aber wenn ich
tun[ './AppCtrl' ].forEach(function(name) {
require(name);
});
es führt zu Fehlern
_prelude.js:1 Uncaught Error: Cannot find module './AppCtrl's @ _prelude.js:1s @ _prelude.js:1(anonymous function) @ _prelude.js:1(anonymous function) @ index.js:48 @ index.js:3s @ _prelude.js:1(anonymous function) @ _prelude.js:11../config @ app.js:22s @ _prelude.js:1e @ _prelude.js:1(anonymous function) @ _prelude.js:1
angular.js:12416 Error: [ng:areq] Argument 'AppCtrl' is not a function, got undefined
http://errors.angularjs.org/1.4.5/ng/areq?p0=AppCtrl&p1=not%20a%20function%2C%20got%20undefined
at REGEX_STRING_REGEXP (angular.js:68)
at assertArg (angular.js:1795)
at assertArgFn (angular.js:1805)
at angular.js:9069
at setupControllers (angular.js:8133)
at nodeLinkFn (angular.js:8173)
at compositeLinkFn (angular.js:7637)
at publicLinkFn (angular.js:7512)
at angular.js:1660
at Scope.parent.$get.Scope.$eval (angular.js:15878)
für mein Endziel Ich möchte in der Lage sein, so etwas wie dieser Pseudo-Code zu tun
foreach name {
angular.module(...).controller(require(name));
}
aber ich bin mir nicht sicher, warum ich keine Dateien innerhalb der Schleife benötigen kann?
Warum genau versuchen Sie dies zu tun? – Bergi
weil ich denke, dass es lächerlich ist, jedes einzelne Modul manuell zu verlangen, gibt es eine Menge repetitiven Code. – xenoterracide
Erfordert alles überall einen Code Geruch natürlich, vielleicht ist etwas mit Ihrem Code falsch? Sie sollten jedoch die Module, die Sie überall in einem großen Modul wiederholen, einfach kombinieren und nur überall importieren. Verwenden Sie kein Array und keine Schleife. – Bergi