2017-06-13 68 views
0

我有一種情況,我想根據輸出值的變化將類(使用ngClass)添加到我的視圖中。 輸出的值取決於來自API的響應,我每秒調用端點來獲取數據。 (簡單的外匯應用)動態改變ngClass值的遞增/遞減

我嘗試使用ngModel和events進行雙向數據綁定,但注意到屏幕閃爍。

任何意見或建議將不勝感激。

添加一些代碼片斷

<tbody> 
    <tr *ngFor="let data of tableData"> 
    .......... 
    <td>{{ data.price }}</td> 
    </tr> 
</tbody> 

我想這個類添加到這個data.price價值,說的初始值爲100,在接下來的反應,如果是101,我想添加綠色背景,如果值爲99,我想添加一個紅色背景。 由於數據每秒都在變化,所以我很難維護狀態並添加類。

回答

0

由於您還沒有提供任何示例代碼,因此我將使用div作爲選擇器。所以在這裏它是<div [class.className]="logicWhenTrue" [class.className]="logicWhenFalse">Content </div> .className如果邏輯返回true將被添加到元素,否則它將忽略該類,就好像它浪費了註釋掉的代碼。這就是爲什麼你需要寫一個你有多少邏輯。

UPDATE

試試這個:

.red { 
 
    background: red; 
 
} 
 

 
.green { 
 
    background: green; 
 
}
<tbody> 
 
<ng-container *ngFor="let data of tableData"> 
 
    <tr [class.green]="data.price > 100" [class.red]="data.price < 100"> 
 
    .......... 
 
    <td>{{ data.price }}</td> 
 
    </tr> 
 
</ng-container> 
 
</tbody>

這應該添加相應的類。

+0

我已經爲你的參考分享了一些片段,真正的問題是如何保持狀態,然後根據值添加類。 –

+0

我已經更新了代碼,看看是否適合你。 –

+0

我看到了實現,它在我們手動設置值時工作。但我的應用程序中的數據是動態的,在這裏查看我的應用程序,您將獲得更好的圖像。 http://www.eastminds.com/#/projects/forex –