2016-04-01 20 views
0

Sayı gösterimi aynı panoda birden çok kez kullanılabilir mi?Gösterge: Sayı widget'ı arka plan rengi

örn. Her takım üyesi için geçerli bir skor göstermek istiyorum, takım puanı başına bir widget/yukarı ok ile son skorla mevcut skoru karşılaştırarak, eğer skor bittiyse widget arka planı ise Widget arka planındaysa Yeşildir kırmızı.

.rb dosyam, bir excel dosyasından veri geçirir.

Her widget doğru akım skorunu gösterir Her widget doğru yukarı/aşağı ok gösterir TÜM widget'lar, aksine tam tersi gösteren .coffee rağmen ne istediğimin karşıt rengi gösterir.

İlk geçişten sonra arka planın hangi renkte durması gerektiğini belirlemek için döngü olup olmadığı gibi.

Hata mı, yoksa kötüye mi? number4.coffee

class Dashing.Number4 extends Dashing.Widget 

@accessor 'current', Dashing.AnimatedValue 

@accessor 'difference', -> 
if @get('last') 
last = parseInt(@get('last')) 
current = parseInt(@get('current')) 
if last != 0 
diff = Math.abs(Math.round((current - last)/last * 100)) 
"#{diff}%" 
else 
"" 

@accessor 'arrow', -> 
if @get('last') 
if parseInt(@get('current')) > parseInt(@get('last')) then 'fa fa-arrow-up' else 'fa fa-arrow-down' 

constructor: -> 
super 

@onData(Dashing.lastEvents[@id]) if Dashing.lastEvents[@id] 
onData: (data) -> 
if parseInt(@get('current')) > parseInt(@get('last')) then $(@node).css('background-color', '#006600') else $(@node).css('background-color', '#660000') 

number4.scss

// 
// ---------------------------------------------------------------------------- 
// Mixins 
// ---------------------------------------------------------------------------- 
@mixin transition($transition-property, $transition-time, $method) { 
-webkit-transition: $transition-property $transition-time $method; 
-moz-transition: $transition-property $transition-time $method; 
-o-transition: $transition-property $transition-time $method; 
transition: $transition-property $transition-time $method; 
} 

// ---------------------------------------------------------------------------- 
// Sass declarations 
// ---------------------------------------------------------------------------- 
$value-color: #fff; 

$title-color: rgba(255, 255, 255, 0.7); 
$moreinfo-color: rgba(255, 255, 255, 0.7); 

// ---------------------------------------------------------------------------- 
// Widget-number styles 
// ---------------------------------------------------------------------------- 
.widget-number4 { 

.title { 
color: $title-color; 
font-size: 40px; 

} 

.value { 
color: $value-color; 

} 

.change-rate { 
font-weight: 500; 
font-size: 30px; 
color: $value-color; 
} 

.more-info { 
color: $moreinfo-color; 
font-size: 23px; 
bottom: 40px; 

} 

.updated-at { 
color: white; 
font-size: 23px; 
} 

} 
+0

Tüm girinti kayboldu, bu da özellikle CoffeeScript için kötü. – 1j01

cevap

0

Tek bir gösterge tablosunda bir widget'a birden çok kez kullanabilirsiniz ancak bu kısım zaten çalışma var gibi geliyor.

Widget'ı soluklaştırmanız, arka plan rengini ayarlamanız ve ardından tekrar solması gerekir. Aksi halde, görüntü oluşturma gerçekleştiğinde arka plan rengi değişimini görmezsiniz. Bu yardımcı olur

onData: (data) -> 
 
     
 
    if @get('last') 
 
     if parseInt(@get('current')) > parseInt(@get('last')) then $(@node).fadeOut().css('background-color', "#006600").fadeIn() else $(@node).fadeOut().css('background-color', "#660000").fadeIn() 
 

Umut.

+0

Cevabınız için teşekkür ederiz. Kodunuzu ekledim/değiştirdim ve her bir widget'ın arka planı 'siyah' ateş ediyor. Düşüncesi olan var mı? – howardsternisbatman

+0

İşi de gönderebilir misin? – Brent