错误错误:找不到其他支持对象“ 0.9”

时间:2019-05-08 17:55:28

标签: angular pipe

我正在开发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>&#160;&#160;
        <span> {{item.properties.place}}</span>

控制台日志

enter image description here

1 个答案:

答案 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 "";
    }

  }

}