2017-05-18 26 views
1

我想爲我的離子應用程序編碼一個非常簡單的日曆顯示器(它基本上只是Angular)。我將每個日期的信息存儲在數組displayedCal中。
當我嘗試使用*ngIf="(i%7)==0"每週創建一個新行時出現錯誤:這給我一個解析錯誤。這樣做的正確方法是什麼?Modulo返回一個模板解析錯誤

<template ngFor let-d [ngForOf]="displayedCal" let-i="index"> 
    <ion-row *ngIf="(i%7)==0"> 
     <ion-col (click)="...">{{d.displayedDate}}</ion-col> 
    </ion-row *ngIf="(i%7)==0"> 
    </template> 


注非離子developpers <ion-row><ion-col>是很像一個<tr>/<td>結構...



注意:如果我只是刪除ngIf我的代碼實際上是加工。

+0

它沒有括號的工作嗎? – Joe

+0

'ngIf'適用於整個塊,而不僅僅是您的代碼行。最後ngIf在這裏沒有意義。 displayCal的內容是什麼樣的? –

+0

用'* ngIf =「(index%7)== 0」'嘗試。請讓我知道這對你有沒有用。 – SrAxi

回答

0

ngIf適用於整個塊,而不僅僅是您的代碼行。但即使這會起作用,它仍然對你的目的沒有意義。

你可以你displayedCal陣列更改爲多維數組形式如下:displayedCal[week][day],然後作出一個嵌套循環:

<template *ngFor="let week of displayedCal"> 
    <ion-row *ngFor"let day of week"> 
    <ion-col (click)="...">{{day.whatever}}</ion-col> 
    </ion-row> 
</template> 

但是日期和時間是一個棘手的問題。您應該仔細考慮您的數據模型。

0

我不想做一個[week][day]結構,因爲它會破壞我的其他功能工作流程。無論如何,因爲它不工作,因爲我想我終於採納你的模式,這是我想出了:

<template ngFor let-week [ngForOf]="displayedCal" let-i="index"> 
    <ion-row> 
     <ion-col *ngFor="let day of week" (click)="...">{{day.displayedDate}}</ion-col> 
    </ion-row> 
    </template> 

非常感謝您的幫助! :)

+0

乾杯:)一個好的數據模型將爲您節省大量的時間在未來的發展 –