微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

angular – 如何使用离子2打字稿从本地JSON获取数据到HTML页面

我有这种类型的 JSON文件.
{
  "records": {
    "patients": {
      "day": "Today","details": [
        {
          "name":"Diab","stat":"Pending","phno":"8197246465","patNames":"Sandra Adams","tests": [
            {"name":"MCHC","result":"positive"}
          ]
        }
      ]
    }
  }
}

如何将每个密钥带入html页面或如何使用服务解析这个?

提前致谢.

您可以通过创建服务提供商来实现
import {Injectable} from '@angular/core';
import {Http,Response} from '@angular/http';
import 'rxjs/Rx';

@Injectable()
export class yourService {
    constructor(public http:Http) {}

getData() {
    return this.http.get("YOUR_PATH_TO_THE_JSON_FILE")
        .map((res:Response) => res.json().YOUR_JSON_HEADER); //records in this case
  }
}

在ts构造函数中定义服务并调用方法来解析数据

this.yourService.getData().subscribe((data) => {
  console.log("what is in the data ",data);
  this.myjsondata = data;
});

确保在app.module.ts中定义服务提供者

对于您的案例中的承诺,修改代码如下:
在您的服务中.

load() {
    console.log('json called');
    return new Promise(resolve => {
        this.http.get('assets/data/patient.json').map(response => {
            this.data = response.json();
            resolve(this.data);
        });
    });
}

在这里,您将获得数据并解决承诺.要在html中使用它,您必须按如下方式获取组件页面中的数据.

this.yourService.load().then((data) => {
      console.log("what is in the data ",data);
      this.patdata= data;
    });

您现在可以在HTML中使用patdata

<h1> {{patdata | json}} </h1>

原文地址:https://www.jb51.cc/angularjs/142487.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐