我需要顯示我從web服務獲得的html數據。我能夠以我想要的格式查看數據,但無法在html上正確顯示。我認爲-any-在http.get中是問題所在。我可以在沒有-any-的情況下讀取控制檯中的數據,但它可以正常工作。當它與它一起工作時,它仍然不能正確打印html。任何人都可以就此提供建議嗎?http observable <any> - Angular 4
HTML
<div>{{this.res}}</div>
app.component.ts
import { Component, OnInit } from '@angular/core';
//import { IMovie } from './movie';
import { AppService } from './app.service';
@Component({
selector: 'app-root',
templateUrl: './app.component.html',
styleUrls: ['./app.component.css']
})
export class AppComponent implements OnInit {
res: any[] ;
errorMessage: string;
constructor(private _appService: AppService) { }
ngOnInit(): void { this.getData(); }
getData(): void {
this._appService.getData()
.subscribe(
(res: any []) => this.res = res,
(error: any) => this.errorMessage = <any>error);
}
}
app.service.ts:
Injectable()
export class AppService {
private urlNorth = '';
constructor(private http: HttpClient) { }
getData(): Observable<any> {
const headers = new HttpHeaders();
headers.set('Content-Type', 'text/sml');
headers.set('Accept', 'text/xml');
headers.set('Content-Type', 'text/xml');
return this.http.get<any>(this.urlNorth,{responseType:'text', headers: headers})
.do(data => {
// console.log(data)
var dataParsed = data.replace('<string xmlns="service">', '').replace('</string>', '').replace(/</g, '<').replace(/>/g, '>');
// console.log(dataParsed);
parseString(dataParsed, (err, res) => {
if (err) {
return console.dir('invalid XML');
}
else {
console.log(res);
console.log(res.NewDataSet.Table[0].DataPointName[0]);
}
})
})
.catch(this.handleError);
}
**數據在控制檯瓦特/ Ø任何**
您是否嘗試過'
你能舉一個「res」數據是什麼的例子嗎? – oppassum
控制檯中是否有錯誤? –