2017-10-09 44 views
2

我无法来解决这个error我得到未处理的承诺拒绝:模板解析错误:离子3

未处理的承诺拒绝:模板解析错误:无法有一个元素 多个模板绑定。仅使用一个属性 命名为 '模板' 或*前缀(”

这里是我的controller

resposeData:any; 
public showJobsInitally = false; 

employerId = 4; // for testing 

    this.authService.postData(this.employerId, "jobsPostedByEmployer").then((result)=>{ 
     this.resposeData = result;  


     console.log(this.resposeData);  


    }, (err) => { 

    }); 

这里是我的模板:html

<ion-card *ngIf="showJobsInitally" *ngFor="let jobs of resposeData?.postedJobs"> 
    <ion-card-header> 
    {{jobs?.company_name}} 
    </ion-card-header> 
    <ion-card-content> 
    <p>{{jobs?.skills}}</p> 
    <p>{{jobs?.package}}</p> 
    <p>{{jobs?.location}}</p> 
    <p>{{jobs?.industry}}</p> 
    <p>{{jobs?.job_type}}</p>       
    </ion-card-content> 
</ion-card> 

authService接收这种格式的数据

{"postedJobs":[{"company_name":"Egdhdf","skills":"jdfjfgjgfjfg","package":"jbfjnbgfjfg","location":"gfgghjjghghj","industry":"kghhjghj","job_type":"fjdjgjghhg","expired_or_not":null},{"company_name":"Enigma Brand Solutions","skills":"php,mysql,javascript","package":"3 lakhs","location":"bangalore","industry":"Software","job_type":"permanent","expired_or_not":null}]} 

回答

3

在一个元素上只允许有一个结构指令。

<ng-container *ngIf="showJobsInitally"> 
    <ion-card *ngFor="let jobs of resposeData?.postedJobs"></ion-card> 
</ng-container> 

角不保证添加到元素属性的任何命令,因此,如果您想ngIfngFor首先计算这将是不清楚的。

通过使用未添加到DOM的<ng-container>帮助程序元素,可以清除此问题。 ngIfngFor当然可以在我的示例代码中切换。

相关问题