2016-12-13 7 views
0

Ich habe ein Problem mit meinem neuen Angular CLI-Projekt (Versionsinformationen weiter unten). Es scheint, dass die Erweiterung des Fensterobjekts in der neuen Version nicht mehr funktioniert.Angular CLI - Erweiterung des Fensterobjekts funktioniert nicht mehr

ng --Version Winkel-cli: 1.0.0-beta.17 Knoten: 6.9.1 os: win32 x64 Fenster 10

Ich habe eine myAPI.js-Datei, die wie folgt aussieht. ..

var myAPI = myAPI || {}; 

(function(myAPI) { 
... 
... 
}(myAPI)); 

window.myAPI = myAPI; 

Ich habe eine myAPI.d.ts-Datei, die diese Schnittstelle definiert hat (nichts anderes).

interface Window { 
myAPI: any; 
} 

In meinem Typoskript Code i verwendet der Lage sein, window.myAPI.XXX zu schreiben und es gut funktionieren würde, ich auf die obige Version aktualisiert und es funktioniert nicht mehr.

Die Fehlermeldung ist, dass window.myAPI nicht definiert ist.

Dies war die ng - Version Details aus der Version, in der dies zuvor funktionierte.

Winkel-cli: 1.0.0-beta.10 Knoten: 6.3.0 os: win32 x64

hat sich etwas verändert, dass diese Art der Sache hält von der Arbeit zwischen 1.0.0-beta.10 und 1.0.0-beta.17?

Antwort

0

Die Frage war:

Durch die Modularisierung mit der neueren Version eingeführt es nicht die „myAPI.d.ts“ Datei wurde Bootstrapping, die die Schnittstelle darin definiert hatte.

Um dies zu beheben, musste die Schnittstellendefinition zu einem Modul, einer Komponente oder einem Dienst hinzugefügt werden, die dann importiert und in "app.module.ts" deklariert wurden.

Sobald dies vorhanden war, funktionierte es wie erwartet.

Verwandte Themen