Ero curioso di riuscire a ottenere le proprietà degli elementi dal modello del componente. Così ho reso semplice div con classe e ho fatto questa classe:Altezza elemento
export class viewApp{
elementView: any;
viewHeight: number;
myDOM: Object;
constructor() {
this.myDOM = new BrowserDomAdapter();
}
clickMe(){
this.elementView = this.myDOM.query('div.view-main-screen');
this.viewHeight = this.myDOM.getStyle(this.elementView, 'height');
}
}
getStyle()
, query()
sono da BrowserDomAdapter. Il mio problema è quando cerco di ottenere altezza è null
, ma quando ho impostato un po 'di altezza da setStyle()
e poi ottengo da getStyle()
restituisce il valore corretto. Dopo aver controllato DOM e gli stili nel browser ho scoperto che è a causa di due elementi CSS. Uno è: .view-main-screen[_ngcontent-aer-1]{}
e il secondo è element{}
. .view-main-screen
ha alcuni stili, ma l'elemento è vuoto. Quando aggiungo stili per setStyle()
, appare in element{}
. Perché? Come posso ottenere le proprietà degli elementi usando Angular2?
Okey, ma come posso usarlo?Provo ad importare Ruler o Rectangle ma il compilatore genera un errore. Comunque, grazie per la risposta! – Arth
Non so sulle importazioni TS, io uso solo Dart. L'unico posto in cui l'ho trovato in uso è https://github.com/angular/angular/blob/3c8fa8c50d820e3317bc40292c73df03c8b23e86/modules/angular2/test/platform/browser/ruler_spec.ts –
Vedi anche https://github.com/angular/angular/issues/6515 # issuecomment-173353649 –