我正在开发Ionic应用程序。我的应用程序是从USGS获取数据json api地震。 l用管道改变背景风格的颜色,以应对地震的价值。
export class MagsCssPipe implements PipeTransform {
transform(value: any, args?: any): any {
let mags = value
if (value >Math.floor(0.0) && value <= 0.9) {
return "one"
} else if (value >Math.floor(1) && value <= 1.9) {
return "one"
} else if (value >Math.floor(2) && value <= 2.9) {
return "tow"
} else if (value > Math.floor(3) && value <= 3.9) {
return "there"
} else if (value > Math.floor(4) && value <= 4.9) {
return "four"
} else if (value > Math.floor(5) && value <= 5.9) {
return "fife"
} else if (value > Math.floor(6) && value <= 6.9) {
return "six"
} else if (value > Math.floor(7) && value <= 7.9) {
return "seven"
} else if (value > Math.floor(8) && value <= 8.9) {
return "eight"
} else if (value > Math.floor(9) && value <= 9.9) {
return "ninue"
}
return mags
}
}
但是当我运行我的应用程序时,我会得到
ERROR Error: Cannot find a differ supporting object '0.9'
html
<span [ngClass]='item.properties.mag | magsCss'>{{item.properties.mag}}</span>  
<span> {{item.properties.place}}</span>
控制台日志
答案 0 :(得分:2)
据我所知,当您准确获得0.9
时会遇到问题,因为您的陈述不考虑该问题。
如果您需要比较地包括0.9
,则必须使用x <= 0.9
,这意味着更少或相等。
如果您擅长将0
放在0.99
处,则可以使用下一个策略
export class MagsCssPipe implements PipeTransform {
transform(value: any, args?: any): any {
let mags = Math.floor(+value)
switch(mags) {
case 0:
case 1:
return "one"
case 2:
return "tow"
case 3:
return "there"
case 4:
return "four"
case 5:
return "fife"
case 6:
return "six"
case 7:
return "seven"
case 8:
return "eight"
case 9:
return "ninue"
default:
return "";
}
}
}