Typescript:属性'never'不存在,但函数有效吗?

时间:2018-03-22 15:56:21

标签: typescript

这是我的代码

sumDevices() {
let onlineDevicesArray = [];
let offlineDevicesArray = [];

for(let group of this.groups[this.selectedDeviceSource.id]){
  for(let device of group.devices){
    if(device.onlineState == "Online"){
      onlineDevicesArray.push(device.onlineState);
      this.onlineDevices = onlineDevicesArray.length;}
    else{
      offlineDevicesArray.push(device.onlineState);
      this.offlineDevices = offlineDevicesArray.length;
    }
  }
}

}

它在device.onlineState上出错,但该函数确实有效。

TS2339:Property 'onlineState' does not exist on type 'never'.

任何人都可以向我解释为什么它会给我这个错误吗?

1 个答案:

答案 0 :(得分:2)

您需要为数组提供类型,默认情况下它是" never"。 这样的事情应该有效。

let onlineDevicesArray:number[] = [];
let offlineDevicesArray:any[] = [];