Issue
So, im working with angular4 in my practice work and this is new for me.
Luckyly, in order to get html elements and its values i used
<HTMLInputElement> document.getElementById
or
<HTMLSelectElement> document.getElementById
Im wondering if there is any replacement for this in angular
Solution
You can tag your DOM element using #someTag
, then get it with @ViewChild('someTag')
.
See complete example:
import {AfterViewInit, Component, ElementRef, ViewChild} from '@angular/core';
@Component({
selector: 'app',
template: `
<div #myDiv>Some text</div>
`,
})
export class AppComponent implements AfterViewInit {
@ViewChild('myDiv') myDiv: ElementRef;
ngAfterViewInit() {
console.log(this.myDiv.nativeElement.innerHTML);
}
}
console.log
will print Some text.