【发布时间】:2021-09-13 05:19:17
【问题描述】:
元素隐式具有“任何”类型,因为“字符串”类型的表达式不能用于索引类型“{}”。 在类型“{}”.ts(7053)
上找不到具有“字符串”类型参数的索引签名收到上述错误消息。在这方面需要帮助。
import { Injectable } from '@angular/core';
import { HttpClient } from '@angular/common/http';
import { map } from 'rxjs/operators';
import { GlobalDataSummary } from '../models/gloabl-data';
@Injectable({
providedIn: 'root'
})
export class DataServiceService {
private globalDataUrl = 'https://raw.githubusercontent.com/CSSEGISandData/COVID-19/master/csse_covid_19_data/csse_covid_19_daily_reports/01-01-2021.csv'
constructor(private http : HttpClient) { }
getGlobalData(){
return this.http.get(this.globalDataUrl, {responseType :'text'}).pipe(
map(result=>{
let data: GlobalDataSummary[] = [];
let raw = {}
let rows = result.split('\n');
rows.splice(0 , 1);
//console.log(rows);
rows.forEach(row=>{
let cols = row.split(/,(?=\S)/)
let cs = {
country : cols[3],
confirmed : +cols[7],
deaths : +cols[8],
recovered : +cols[9],
active : +cols[10],
};
let temp = raw[cs.country];
if(temp)
{
temp.active = cs.active + temp.active
temp.confirmed = cs.confirmed + temp.confirmed
temp.deaths = cs.deaths + temp.deaths
temp.recovered = cs.recovered + temp.recovered
raw[cs.country] = temp;
}else{
raw[cs.country] = cs;
}
})
return Object.values(raw);
})
)
}
}
【问题讨论】:
标签: angular components