2016-02-29 105 views
3

我試圖創建動態生成離子2段按鈕,但每次當我使用一些Angular指令,它失敗。我看到段按鈕,但點擊不會改變任何東西,包括ngModel變量。見例如:離子2段不與角度指令

工作靜態例如:

<ion-segment [(ngModel)]="subsActiveDay"> 
    <ion-segment-button value="2016-03-01T00:00:00.000Z"> 
     1 
    </ion-segment-button> 
    <ion-segment-button value="2016-03-02T00:00:00.000Z"> 
    2 
    </ion-segment-button> 
</ion-segment> 
{{subsActiveDay}} 

不工作:

<ion-segment [(ngModel)]="subsActiveDay"> 
    <ion-segment-button *ngFor="#day of subs" [value]="day.date"> 
     {{day.datestamp | date}} 
    </ion-segment-button> 
</ion-segment> 
{{subsActiveDay}} 

在第二個例子中按鈕被生成的,但不存在默認選擇按鈕和subsActiveDay可變後不改變單擊。我試圖找出ngFor,並使用組件中定義的兩個測試變量作爲值,但結果也失敗了。

任何想法可能會出現問題?

+0

我有完全相同的問題,您是否找到解決方案了? – Eric

+0

不幸的是,沒有:-( –

回答

2

我剛剛在查看段源代碼後找到了解決方法。所以,你可以只使用value,而不是[value]這樣的:

<ion-segment [(ngModel)]="subsActiveDay"> 
    <ion-segment-button *ngFor="#day of subs" value="{{day.date}}"> 
     {{day.datestamp | date}} 
    </ion-segment-button> 
</ion-segment> 
{{subsActiveDay}} 

還有就是檢查value屬性是否發出行時ngOnInit或根本不喜歡這個

SegmentButton.prototype.ngOnInit = function() { 
    if (!util_1.isPresent(this.value)) { 
在segment.js線98

希望這可以幫助你。