2015-02-24 68 views
1

我正在使用ng-repeat來顯示數組並調用一個函數來顯示variabled。以angularjs顯示基於值的文本

在我的情況下,函數返回1,2或3。基於我需要顯示數字的文本說

如果1,則顯示的結果begineer, 如果2則顯示結果爲中度, 如果3然後顯示結果爲專家。

我知道ng-show,但是有一個快速的解決方案。

{{getdetails("skilllevel",course.courseID)}}` 

回答

3

有幾個方法可以做到這一點angularjs 1.1.5及以上版本:

ngSwitch是另一種選擇

<div ng-repeater="course in courses"> 
    <div ng-switch on = course.courseID"> 
     <p ng-switch-when = "1">beginner</p> 
     <p ng-switch-when = "2">moderate</p> 
     <p ng-switch-when = "3">expert</p> 
    </div> 
</div> 

他人使用是ng-if

<div ng-repeater="course in courses"> 
    <div ng-if = "course.courseID == 1"> 
     <p>beginner</p> 
    </div> 
    <div ng-if = "course.courseID == 2"> 
     <p>moderate</p> 
    </div> 
    <div ng-if = "course.courseID == 3"> 
     <p>expert</p> 
    </div> 
</div> 

如果你真的不想使用NG-節目,只有兩個選擇,如果

<div ng-repeater="course in courses"> 
    <p>{{course.courseID == 1 ? 'beginner' : 'expert'}}</p> 
</div> 
+0

謝謝,我會用三元。我用其他邏輯完成了這項工作。我將保持這個邏輯適用於其他項目。 – 2015-07-02 04:11:51