在Stackblitz上使用HttpClient读取data.json吗?

Ole*_*Ole 2 javascript typescript angular stackblitz

我有一个很小的演示,它尝试app/data.json使用Angular HttpClient 进行读取。

const post$:Observable<Post> = <Observable<Post>> http.get('./data.json');
Run Code Online (Sandbox Code Playgroud)

但是HttpClient响应说:

解析期间失败...

有什么想法吗?

yur*_*zui 7

除了在assets文件夹中时,Stackblitz当前不提供静态文件。

因此,您在这里有两个选择:

1)直接将json作为模块导入

import data from './data.json';

console.log(data) // => {title: "Simulating HTTP Requsts", content: "This is off the hook!!"}
Run Code Online (Sandbox Code Playgroud)

有关更多详细信息,请参见其他答案

2)将json移动到资产文件夹中(注意:您必须重新加载stackblitz才能使其工作):

http.get('/assets/data.json')
Run Code Online (Sandbox Code Playgroud)

分叉的Stackblitz