Versuchen Sie herauszufinden, wie Fenstergröße bei der Größenanpassung von Ereignissen in Angular2 erhalten. Hier ist mein Code:Angular2 erhalten Fensterbreite onResize
export class SideNav {
innerWidth: number;
constructor(private window: Window){
let getWindow = function(){
return window.innerWidth;
};
window.onresize = function() {
this.innerWidth = getWindow();
console.log(getWindow());
};
}
Ich Import Fenster Provider global in der bootstrap.ts Datei ermöglichen den Zugriff auf meine App-Fenster zu gewinnen. Das Problem, das ich habe, ist dies gibt mir eine Fenstergröße, aber auf die Größe des Fensters - es wiederholt nur die gleiche Größe immer und immer wieder, auch wenn das Fenster die Größe ändert. Siehe Bild für console.log Beispiel: Screenshot image
Mein Gesamtziel ist es, die Fensternummer auf eine Variable onresize in der Lage sein zu setzen, so kann ich den Zugriff auf sie in der Vorlage haben. Irgendwelche Ideen, was ich hier falsch mache?
Danke!
warum tat Sie kommentieren den @Hostlistener? Bei mir klappt es nur ohne die Kommentar-Schrägstriche, aber dann klappt es perfekt :-) –
Es ist als Alternative gemeint. Sie können es entweder zu einem Element in der Vorlage hinzufügen, wie im ersten ausgeschnittenen Code gezeigt wird, oder Sie verwenden einen '@HostListener()', um das Komponenten-Host-Element selbst zu überwachen. Ich habe meine Antwort aktualisiert, um es klarer zu machen. –