Evento che non funziona in html dinamico in angular2

Vuoi aggiungere l’html generato dynamicmente in un DOM, accodandolo con successo in un DOM ma nessuna funzione funziona come il clic, ecc.

ngOnInit() { this.sideBarData += '' + ''; this.sideBarData += ''; this.getJSONService.getData() .subscribe(response => { var value=response.datas if (value.length > 0) { for (var i = 0; i < value.length; i++) { if (value[i].state) { this.sideBarData += ''; } else { this.sideBarData += ''; this.sidebarChild.element.nativeElement.innerHTML=this.sideBarData } } } }) } 

I dati vengono aggiunti in DOM ma nessuna chiamata all’evento sta funzionando.

Puoi per favore aiutare. Grazie in anticipo.

Impostare html in DOM direttamente da solo non è il modo giusto di fare le cose in Angular . Il modo giusto è dividere il codice in Componenti , in cui ogni componente dovrebbe avere la propria responsabilità (S in SOLID).

E per questo tipo di interazione (mostrare / hide, styling) dovresti usare: ngIf , ngSwitch , ngClass nei tuoi template.