如何在Angular 2中基于http.get请求更新div
我的菜单栏在左边,内容部分在右边。 每当我点击左侧的菜单时,就会执行http.get请求,我收到响应数据,但我不知道如何替换contentdiv中的数据。 如果有人帮助我,谢谢你 组件ts如何在Angular 2中基于http.get请求更新div,angular,typescript,http-get,Angular,Typescript,Http Get,我的菜单栏在左边,内容部分在右边。 每当我点击左侧的菜单时,就会执行http.get请求,我收到响应数据,但我不知道如何替换contentdiv中的数据。 如果有人帮助我,谢谢你 组件ts import {Component} from 'angular2/core'; import {Http} from "angular2/http"; import {HTTPTestService} from "./http-test.service"; import {HTTPSecondCompone
import {Component} from 'angular2/core';
import {Http} from "angular2/http";
import {HTTPTestService} from "./http-test.service";
import {HTTPSecondComponent} from "./http_second.component";
import {Observable} from 'rxjs/Rx';
@Component({
selector: 'http-test',
template: ` <div class="leftside">
<ul> //left side menu iteration
<li *ngFor="#item of getData?.items" (click)="getPosts()">
<a href="#">{{item.name}}
</a>
</li>
</ul>
//content to display ======= where i struggle to update data
<div *ngFor="#data of postData?.datas"> {{data.creation_date}}
</div>
</div>
`,
directives: [HTTPSecondComponent],
providers:[HTTPTestService],
styleUrls:["../src/css/http-style.css"]
})
export class HTTPTestComponent {
public getData;
public postData;
public displayName;
public creationDate;
constructor (private _httpService: HTTPTestService){}
getStack()
{
this._httpService.getItemData()
.subscribe(
data =>this.getData = (data),
// console.log(this.httpData);},
error => alert(error),
() =>console.log("finished")
);
}
getPosts(){
this._httpService.getPostData()
.subscribe(
data =>this.postData = (data),
// console.log(this.httpData);},
error => alert(error),
() =>console.log("finished")
);
}
ngOnInit() {
this.getStack();
this.getPosts();
}
}
单击菜单链接时接收内容数据
{
"datas": [
{
"owner": {
"reputation": 3589,
"user_id": 1376277,
"user_type": "registered",
"accept_rate": 34,
"profile_image": "https://www.gravatar.com/avatar/195fcc7db00488b207c67ccfee6a2c5b?s=128&d=identicon&r=PG",
"display_name": "Rahul Gupta",
"link": "http://stackoverflow.com/users/1376277/rahul-gupta"
},
"score": 1,
"last_edit_date": 1483342788,
"last_activity_date": 1483342788,
"creation_date": 1423733190,
"post_type": "question",
"post_id": 28473725,
"link": "http://stackoverflow.com/q/28473725"
}
]
}
你班上有一个学生。 但它不会被执行,除非它不是由OnInit实现的 为了正确地使用它(确保它会被启动),您必须将类扩展为OnInit的实现。更改课程标题的第一行,如下所示:
export class HTTPTestComponent implements OnInit {
import {Component, OnInit} from 'angular2/core';
并将OnInit添加到导入行,如下所示:
export class HTTPTestComponent implements OnInit {
import {Component, OnInit} from 'angular2/core';
您的函数getStack()和getPosts()将在开始时执行items数组中的name字段在哪里?如果需要,您可以帮助我跟踪堆栈吗any@RahulSingh名称是左侧菜单的工作,我在内容中输入了更新数据,这是同一模板中的下一部分(我在angular中是新的)。