我有一个小演示,它尝试app/data.json
使用 Angular HttpClient 进行读取。
const post$:Observable<Post> = <Observable<Post>> http.get('./data.json');
然而,HttpClient
回复说:
解析失败...
想法?
我有一个小演示,它尝试app/data.json
使用 Angular HttpClient 进行读取。
const post$:Observable<Post> = <Observable<Post>> http.get('./data.json');
然而,HttpClient
回复说:
解析失败...
想法?
Stackblitz 目前不提供静态文件,除非它们位于assets
文件夹中。
所以你在这里有两个选择:
1)直接导入json作为模块
import data from './data.json';
console.log(data) // => {title: "Simulating HTTP Requsts", content: "This is off the hook!!"}
更多详情请查看其他答案
2)将该json移动到资产文件夹中(注意:您必须重新加载stackblitz才能使其工作):
http.get('/assets/data.json')
目前,您无法通过 HTTP 直接获取 JSON,但您可以将其导入
数据.json
它返回 index.html 的资源而不是您期望的数据
import { of } from 'rxjs';
import data from './data.json';
export class AppComponent {
constructor(http:HttpClient) {
}
ngOnInit(){
const post$ = of(data);
post$.subscribe(console.log);
}
}