我使用了一段代码构建和应用程序,它使用angular2,typescript和firebase从last.fm收集数据。
源代码可以在这里找到:https://github.com/vtts/mytunes
问题如何从json调用中转换结果?
https://github.com/vtts/mytunes/blob/master/app/music/services/music.srv.ts
app/music/services/music.service.ts(29,39): error TS2339: Property 'results' does not exist on type 'Response'.
app/music/services/music.service.ts(51,36): error TS2339: Property 'album' does not exist on type 'Response'.
{
"name": "mytunes",
"version": "1.0.0",
"scripts": {
"start": "tsc && concurrently \"npm run tsc:w\" \"npm run lite\" ",
"lite": "lite-server",
"postinstall": "typings install",
"tsc": "tsc",
"tsc:w": "tsc -w",
"typings": "typings"
},
"license": "ISC",
"dependencies": {
"angular2": "2.0.0-beta.15",
"bootstrap": "^3.3.6",
"es6-shim": "^0.35.0",
"firebase": "^2.4.2",
"reflect-metadata": "0.1.2",
"rxjs": "5.0.0-beta.2",
"systemjs": "0.19.26",
"zone.js": "0.6.10"
},
"devDependencies": {
"concurrently": "^2.0.0",
"lite-server": "^2.2.0",
"typescript": "^1.8.10",
"typings": "^0.7.12"
}
}
{
"compilerOptions": {
"target": "es5",
"module": "system",
"moduleResolution": "node",
"sourceMap": true,
"emitDecoratorMetadata": true,
"experimentalDecorators": true,
"removeComments": false,
"noImplicitAny": false,
"outDir": "js"
},
"exclude": [
"node_modules",
"typings/main",
"typings/main.d.ts"
]
}
我正在使用以下REST API:
答案 0 :(得分:2)
而不是重复使用键入为res
Response
res = res.json();
创建一个新的
let result = res.json();
然后使用result
代替res