2017-05-16 78 views
0

所以讓我解釋給你,我有一個Observable映射JSON到我的視圖,我用ngFor解析它,它工作得很好,然後我想根據該值顯示一個img(箭頭):如果該值爲0,則顯示穩定箭頭,如果該值爲負值,則顯示向下箭頭,如果是正值,則顯示向上箭頭......如果有人有一個想法,我會感激:))...請看看我試圖波紋管:NgIf綁定IMG取決於正面的負面或相等的價值角

問題是我怎麼能顯示IMG取決於積極,消極或相等的價值?

<p class="numbersred" *ngFor="let user of userService.users | async"> {{user.data.apps.availability.trend}}%</p> 
      <span *ngIf="user?.data.apps.availability.trend===0"> 
       <img src="./app/img/icones_sized/stable_arrow_small.png"/> 
      </span>     
      <span *ngIf="user?.data.apps.availability.trend >= 0"> 
       <img src="./app/img/icones_sized/up_arrow_small.png"/>                 
      </span> 
      <span *ngIf="user?.data.apps.availability.trend <= 0"> 
       <img src="./app/img/icones_sized/down_arrow_small.png"/> 
      </span></p> 
+0

是什麼問題? –

+0

您在所有情況下都包含零 – elvin

+0

問題是,如何根據正值,負值或相等值顯示img ...我更新我的文章 –

回答

1

你應該條件分開,>0=0<0

<span *ngIf="user?.data.apps.availability.trend===0"> 
    <img src="./app/img/icones_sized/stable_arrow_small.png"/> 
</span>     
<span *ngIf="user?.data.apps.availability.trend > 0"> 
    <img src="./app/img/icones_sized/up_arrow_small.png"/>                 
</span> 
<span *ngIf="user?.data.apps.availability.trend < 0"> 
    <img src="./app/img/icones_sized/down_arrow_small.png"/> 
</span> 
+0

非常感謝您看起來像您的代碼是正確的,因爲我在控制檯中有任何錯誤,但我在視圖中看不到任何內容..我會搜索原因;) –

+0

它的工作原理!我只是用CSS來玩一點,因爲我的箭頭正在移動我的div,但它的工作非常感謝:-) –

+0

@EmileCantero歡迎您:)高興地幫助。 – Pengyy

1

嘗試像這樣重新分解。

<p class="numbersred" *ngFor="let user of userService.users | async"> {{user.data.apps.availability.trend}}%</p> 
      <span *ngIf="user?.data.apps.availability.trend"> 
       <img src="getImage(user.data.apps.availability.trend)"/> 
    </span> </p>  

而你的組件。

getImage(trend){ 

    if (trend === 0) 
    return './app/img/icones_sized/stable_arrow_small.png'; 
    else if (trend > 0) 
    return './app/img/icones_sized/up_arrow_small.png'; 

    return './app/img/icones_sized/down_arrow_small.png'; 
} 
+1

非常感謝您的幫助 –