/ / mit gulp-ng-annotieren mit gulp-systemjs-builder - angularjs, systemjs, systemjs-builder

mit gulp-ng-annotieren mit gulp-systemjs-builder - angularjs, systemjs, systemjs-builder

Ich habe meine angularjs-Anwendung im CJS-Format geschrieben und verwendet gulp-systemjs-builder um sie zu einer Datei zu bündeln.

Ich versuche, den Ausgang zu leiten gulp-ng-annotate für DI, aber es schlägt fehl, da systemjs-builder ein paar Zeilen zwischen den * @ngInject * und Funktionsdeklaration.

Beispiel:

Vor dem Bundle:

/* @ngInject */
function ReportCtrl($scope) {
var _ctrl = this;
}

Nach dem Bundle:

/* @ngInject */
var global = this || self,
GLOBAL = global;
function ReportCtrl($scope) {
var _ctrl = this;
}

Kann jemand vorschlagen, wie ich dieses Problem überwinden kann?

Antworten:

0 für die Antwort № 1

Gefunden eine Lösung in https://github.com/olov/ng-annotate

Anstatt einen Kommentar zu verwenden /* @ngInject */Ich musste String benutzen "ngInject"; als erste Zeile nach meiner Funktionsdeklaration. Diesen Weg gulp-systemjs-builder hat die Bestellung nicht durcheinandergebracht und ng-annotate konnte die Funktionen erfolgreich kommentieren.

Also, anstatt das zu schreiben -

/* @ngInject */
function ReportCtrl($scope) {
var _ctrl = this;
}

Ich musste das schreiben -

function ReportCtrl($scope) {
"ngInject";
var _ctrl = this;
}