当响应为false时,如何删除行数据,该行数据作为angular2中的响应添加到true上



Hai我有一组数据,在响应时被推送为true,现在在提交按钮之前,我正在更改选项,以便获得false的响应,所以在这个过程中,我需要删除被推送到数组中的特定项。

TS:

onChangeMedication(value, rowData) {
let exe = this.exeTypeNumber(value);
this.medicationTableValue.map(details => {
let medicationObj = { ...medicationFields };
if (details.code === rowData.code) {
if (value != '17587') {
let params = { PatientId: this.userId, ExeType: exe, TableId: 'medication', Param1: rowData.name, Param2: rowData.date ? new DatePipe('en').transform(rowData.date, 'yyyy-MM-dd HH:mm:ss') : null, Param3: null }
this.emrservice.ccdRecord(params)
.subscribe((res) => {
this.validStatus(res.Body.Data, rowData);
if (res.Body.Data) {
this.exportCCDSuperObj.medication.push(medicationObj);
} 
});
}
};
});
}

这将给出正确或错误的api响应

validStatus(data, rowData) {
this.isValidItems = data
if (!this.isValidItems) {
rowData.showNoStatus = true;
rowData.showYesStatus = false;
this.isDisabled = false;
} if (this.isValidItems) {
rowData.showYesStatus = true;
rowData.showNoStatus = false;
this.isDisabled = true;
}
}

HTML:

<td>
<select (change)="onChangeMedication($event.target.value,rowData)" [value]="defaultValue">
<option value=''>Select Record</option>
<option *ngFor="let sType of validType" [value]='sType.Id'>{{sType.Description}}</option>
</select>
</td>
<i class="fa fa-times" aria-hidden="true" *ngIf="rowData.showNoStatus"></i>
<i class="fas fa-check" *ngIf="rowData.showYesStatus"></i>

您可以通过生成一个不包括特定项目(如(的新数组来从数组中删除该项目

this.yourArray = this.yourArray.filter(element => element.property == “Somthing”);

这将生成一个新数组,并将其值放入新数组中,其中没有任何元素与您的等式匹配。

我尝试了这种方式,并能够按照我的要求获得。所以现在我可以删除在点击响应更改时添加到阵列中的项目

TS:

onChangeMedication(value, rowData) {
let exe = this.exeTypeNumber(value);
this.medicationTableValue.map(details => {
let medicationObj = { ...medicationFields };
if (details.code === rowData.code) {
if (value != '17587') {
let params = { PatientId: this.userId, ExeType: exe, TableId: 'medication', Param1: rowData.name, Param2: rowData.date ? new DatePipe('en').transform(rowData.date, 'yyyy-MM-dd HH:mm:ss') : null, Param3: null }
this.emrservice.ccdRecord(params)
.subscribe((res) => {
this.validStatus(res.Body.Data, rowData);
if (res.Body.Data) {
this.exportCCDSuperObj.medication.push(medicationObj);
} else {
var index = this.exportCCDSuperObj.medication.indexOf(rowData);
this.exportCCDSuperObj.medication.splice(index, 1);
}
});
}
};
});
}

最新更新