como manter o estado da interface do usuário na mudança de modelo no angular2?
qual é a melhor maneira de manter o estado da interface do usuário em angular2? Atualmente, estou tendo problemas dentro de um único componente.
Então, eu estou tentando manter a classe usando o ngif, mas não sei como colocar essa condição para mudar de classe no ngif.
*ngif="uiState=desired.elementId" // how to set class here?
e existe alguma outra maneira de manter o estado em angular2? no entanto, eu até tentei usar serviços observáveis, mas os dados vêm primeiro e são processados mais tarde, portanto não funcionam. Existe alguma função que eu possa chamar onviewupdate complete etc?
ATUALIZAR
meu serviço observável
this.ObservableService.getData.subscribe((val) => {
this.data= val;
});
meu html
<div *ngFor="let foo of data">
<div class="collapsible-header" [id]="foo.array1.value1">
{{poo.array1.value2}} , <h6>posted on {{foo.array1.value3}}</h6>
</div>
<div class="collapsible-body">
<p>{{foo.array2.value2}}</p>
</div>
<ul class="collection">
<li *ngIf="foo.array4.value1>= 1" class="active collection-item">
<div *ngFor="let p of foo.array4">
<span class="title">{{p.somevalue}}</span>
</div>
</li>
</ul>
<div>
<input type="text" (ngModel)="mymodel.value1" ">
<button type="submit" (click)="callback(mymodel)">Submit</button>
</div>
</div>
e minha função de retorno de chamada
callback(){
...
this.ObservableService.brodcast(data);
...
}
Assim, quando novos dados estiverem disponíveis, não quero que todo o html seja renderizado<ul class="collection">
Desde a<div class="collapsible-header"
terá uma aulaactive
quando o usuário o abriu. mas nas alterações de modelo, ou seja, dados atualizados estão disponíveis, tudo é redefinido. Então, como posso gerenciar esse estado? Se precisar de mais detalhes, entre em contato. Eu segui este artigohttp://blog.thoughtram.io/angular/2016/02/22/angular-2-change-detection-explained.html mas não está funcionando no meu caso ou estou fazendo algo errado, não sei.