Javascript NGF的变更特定元素,其中列表为变更
我有这个Javascript NGF的变更特定元素,其中列表为变更,javascript,angular,typescript,Javascript,Angular,Typescript,我有这个HTML用于显示用户列表: <div *ngFor="let item of users " [ngClass]="{'highlight': item.isDeleted }" class="d-flex selected-list-items mt-3"> <div class="col-md-5 col-lg-5 col-xs-5 col-sm-5 col-xl-5"> <label&
HTML
用于显示用户列表:
<div *ngFor="let item of users " [ngClass]="{'highlight': item.isDeleted }"
class="d-flex selected-list-items mt-3">
<div class="col-md-5 col-lg-5 col-xs-5 col-sm-5 col-xl-5">
<label>{{item.displayName}}</label>
</div>
<div class="col-md-5 col-lg-5 col-xs-5 col-sm-5 col-xl-5">
<label> {{ getEnumTranslate(item.title)}}</label>
</div>
<div class="justify-content-center col-md-2 col-lg-2 col-xs-2 col-sm-2 col-xl-2">
<button (click)="deleteUser(item.userId)" mat-button>
<mat-icon aria-label="Delete" color="accent">delete</mat-icon>
</button>
</div>
</div>
在html中,在这段代码中更改find user的背景色let user=this.users.find(x=>x.userId=element)代码>
现在我的问题是:
当transport
为change时,它运行代码以更改背景并找到该用户,但它只更改此HTML代码中第一个元素的背景,
第三个元素中的特定用户,但在需要更改HTML中第三个元素的事件中,它更改第一个元素
如何解决此问题?我已更新了适用于您的场景的代码。在这里,我改变了用户数组中的实际数据。请检查并让我知道它是否解决了您的问题
this.transport.listValue$.subscribe(数据=>{
如果(数据!=null){
for(此.users的常量用户){
if(data.includes(user.userId)){
user.isDeleted=true
}
}
}
});代码>我已经更新了适用于您的场景的代码。在这里,我改变了用户数组中的实际数据。请检查并让我知道它是否解决了您的问题
this.transport.listValue$.subscribe(数据=>{
如果(数据!=null){
for(此.users的常量用户){
if(data.includes(user.userId)){
user.isDeleted=true
}
}
}
});代码>请使用创建复制您的问题的演示。请使用创建复制您的问题的演示。
this.transport.listValue$.subscribe(data => {
if (data != null) {
data.forEach(element => {
let user = this.users.find(x => x.userId = element);
if (user != null) {
user.isDeleted = true;
}
});
}
});