angular - 对待 API Angular 4
问题描述
对待 Angular API 4
在 html 中的 Angular 4 应用程序中,我从 API 检索数据。例如,如果在 api "id: 2" 中,我如何在 HTML 中显示 "home"?
我应该把这个指令放在哪里?我是 Angular 的超级初学者,我不知道该怎么做。
代码:
组件.html:
<div class="cartao">
<div *ngFor="let comunicado of comunicados">
<div class="card{{comunicado.type}}">
<div class="cardUnt">
<ul>
<li>
<input type="checkbox" checked>
<h4>
<b>
<span class="nome1">{{comunicado.title}}</span>
<span class="nome2">{{comunicado.id}}</span>
</b>
</h4>
<span class="tag" id="tipo">{{comunicado.type}}</span>
<span class="dataHora">{{ comunicado.date}}</span>
<p class="descript">{{ comunicado.description}}</p>
<p class="fullDescript">{{ comunicado.fullDescription}}</p>
</li>
</ul>
</div>
</div>
</div>
组件.ts:
import { Component, OnInit, Input } from '@angular/core';
import { Comunicado } from './comunicado.model';
import { ComunicadosService } from './comunicados.service';
@Component({
selector: 'app-cards',
templateUrl: 'src/app/cards/cards.component.html',
styleUrls: ['src/assets/styles/estilosGerais.css'],
})
export class CardsComponent implements OnInit{
@Input() comunicado: Comunicado
comunicados: Comunicado[] = []
constructor(private comunicadosService: ComunicadosService) {}
ngOnInit() {
this.comunicadosService.comunicados()
.subscribe(comunicados => this.comunicados = comunicados)
}
}
服务.ts:
import { Injectable } from '@angular/core'
import { HttpClient } from "@angular/common/http"
import { Observable } from "rxjs/Observable"
import { Comunicado } from './comunicado.model'
import { COMUNIC_API } from '../app.api'
import 'rxjs/add/operator/map'
@Injectable()
export class ComunicadosService {
constructor(private http: HttpClient){}
comunicados(): Observable<Comunicado[]> {
return this.http.get<Comunicado[]>(`${COMUNIC_API}/comunicados`);
}
}
部分api:
{
"comunicados": [
{
"id": 1,
"title": "text",
"seen": false,
"type": 0,
"description": "text.",
"fullDescription":"text.",
"date": "2018-05-03 8:30"
},
解决方案
推荐阅读
- c# - 如果在选择新的 linq 中结果为 < 0
- node.js - 如何在 MVC 架构中创建松散耦合的服务?
- reactjs - 如何在非反应 3rd 方 html 中呈现多个反应组件
- selenium - 使用 selenium-chrome-driver 4.0.0-alpha-5 并且我收到此错误:“此版本的 ChromeDriver 仅支持 Chrome 版本 81”
- java - 持续的 React Native 问题:未设置 JAVA_HOME
- javascript - 如何验证嵌套和有条件可选的 Yup 模式
- javascript - 使用不带 e 参数的 e.preventDefault 调用函数
- c++ - C++中的字符串序列化
- r - 为什么我的 SPARQL 查询在 idref 中有效,但在 R 中无效?
- java - 使用正则表达式删除非数字后抓取最后四位数字