从本地主机获取Json
从本地主机获取Json
我正在尝试从http://localhost:3000/clientes
中获取一些Json,在Angular 5中,并将其加载到表格中。
当Json在/assets/目录下时,我可以直接加载到表格中。
以下是general.component.ts
中的代码:
constructor (private httpService: HttpClient) { } myVals: string []; ngOnInit () { this.httpService.get('./assets/person.json').subscribe( data => { this.myVals = data as string []; }, (err: HttpErrorResponse) => { console.log (err.message); } ); }
以下是我的表格主体内容:
{{item.ID}} {{item.Name}} {{item.CPF}} {{item.body}}
我已经搜索了很多,但迄今为止没有找到能帮助我的东西。谢谢。
问题:从本地主机获取Json的出现的原因是什么?
原因:问题的原因是在使用HttpClient时,没有指定响应的类型,导致在消费输出时不够明确和容易。
解决方法:
1. 创建一个接口Items,根据响应的类型进行更改。
export interface Items { ID: string; // 根据响应更改类型 NAME: string; CPF: string; }
2. 在general.component.ts中导入这个接口。
import { Items } from './路径/Items';
3. 将observable转换为Items数组类型。
private url ='http://localhost:3000/clientes'; public myVals = []; ngOnInit () { this.httpService.get(this.url).subscribe( data => { this.myVals = data; }, (err: HttpErrorResponse) => { console.log (err.message); } ); }
通过以上步骤,问题就可以解决了。