Javascript 角度2写表行而不是追加!目前正在使用*ngFor

Javascript 角度2写表行而不是追加!目前正在使用*ngFor,javascript,angular,typescript,angular-directive,Javascript,Angular,Typescript,Angular Directive,实际上,我试图将每个服务对象表示为一个表行,但当我再次调用javascript函数时,*ngFor creates会将另一组行追加到现有行中 <tr class="table table-hover table-responsive " *ngFor="let service of services"> <td>{{ service.serviceName }}</td> <td>{{ service.s

实际上,我试图将每个服务对象表示为一个表行,但当我再次调用javascript函数时,*ngFor creates会将另一组行追加到现有行中

<tr class="table table-hover  table-responsive "  *ngFor="let service of services">
          <td>{{ service.serviceName }}</td>
          <td>{{ service.state }}</td>

          <td>{{ service.domainName }}</td>
          <td>{{ service.releaseVersion }}</td>
          <td>{{ service.editionDisplayName }}</td>
          <td>{{ service.creationDate }}</td>
设定值函数

setValues(array){

const jsonVal = array;
console.log('This is a surprise!!' + JSON.stringify(jsonVal.keys));


   jQuery.each( array, ( key, value ) => {
    console.log('Jquery Output 1st' + key + ': ' + value.state );
    console.log('Jquery Output 1st' + key + ': ' + value.serviceName );
    console.log('Jquery Output 1st' + key + ': ' + value.domainName );
    console.log('Jquery Output 1st' + key + ': ' + value.releaseVersion );
    console.log('Jquery Output 1st' + key + ': ' + value.creationDate );
    console.log('Jquery Output 1st' + key + ': ' + value.BI_SERVICE_URL );
    console.log('Jquery Output 1st' + key + ': ' + value.editionDisplayName );
     console.log('GEtting Essbase values' + JSON.stringify(value.components.BI.attributes.profile_essbase.value));
     this.services.push(new ServerProperties(JSON.stringify(value.serviceName), JSON.stringify(value.state),
       JSON.stringify(value.domainName), JSON.stringify(value.releaseVersion),
JSON.stringify(value.editionDisplayName),
});
}     
调用函数

<input type="text"
       class="form-control"
       [(ngModel)]="serverName"
>
<button class="btn btn-primary pull-left"  (click)="onCreateServer()">Get Details</button>

获取详细信息

每次调用onCreateServer()时,尝试将
this.services=[]
设置为如下所示

onCreateServer(){
this.serverCreationStatus = 'Server Instance Created! ' + this.serverName;
    return this.http.get('http://127.0.0.1:5000/PodChecker/', {params:
    {Podurl: this.serverName
    }}).subscribe( (response: Response) => {
      this.services= [];
//... more code
而不是在调用setValues之后


希望这有帮助。

您是如何填充
服务的?您是否正在更新它?我正在点击rest url并获得响应,我正在将响应JS object.empty
services array
,然后再将新数据写入rest url response中。@Satpal您有什么解决方案吗?@anoop如果我清空JS对象,以前的数据将不会被覆盖!
onCreateServer(){
this.serverCreationStatus = 'Server Instance Created! ' + this.serverName;
    return this.http.get('http://127.0.0.1:5000/PodChecker/', {params:
    {Podurl: this.serverName
    }}).subscribe( (response: Response) => {
      this.services= [];
//... more code