首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在Stackblitz上用HttpClient阅读HttpClient?

在Stackblitz上用HttpClient阅读HttpClient?
EN

Stack Overflow用户
提问于 2019-01-05 07:30:20
回答 3查看 1.4K关注 0票数 5

我有一个小小的演示和它尝试使用角HttpClient来读取app/data.json

代码语言:javascript
复制
const post$:Observable<Post> = <Observable<Post>> http.get('./data.json');

然而,HttpClient回复说:

在解析过程中失败。

有什么想法?

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2019-01-05 08:36:41

Stackblitz目前不提供静态文件,除非它们位于assets文件夹中。

所以你有两个选择:

1)作为模块直接导入json

代码语言:javascript
复制
import data from './data.json';

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

有关详细信息,请参阅其他答案。

2)在folder(Note__:中移动json,您必须重新加载stackblitz才能使其工作):

代码语言:javascript
复制
http.get('/assets/data.json')

叉式斯塔克布利茨

票数 8
EN

Stack Overflow用户

发布于 2019-01-05 08:24:09

目前,您无法通过HTTP直接获取JSON,但是可以导入它

data.json

它返回index.html的资源,而不是您期望的数据。

在线示例

代码语言:javascript
复制
import { of } from 'rxjs';
import data from './data.json';

export class AppComponent  {
  constructor(http:HttpClient) {

  }

  ngOnInit(){
    const post$ = of(data);
    post$.subscribe(console.log);
  }
}
票数 2
EN

Stack Overflow用户

发布于 2019-01-05 08:26:11

我认为在stackblitz中阅读本地json有一些问题,它不只是返回普通的json,而是返回index.html。但是,另一种方法是模拟本地json的请求,您可以尝试:

代码语言:javascript
复制
import data from './data.json'

ngOnInit(){
  this.getDatas().subscribe(data=>{
    console.log(data)
  })
}

getDatas():Observable<any>{
  return of(data).pipe(delay(1000));
}

分叉式演示

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/54049933

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档