Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/loops/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript Angular2 http.get代码不工作_Javascript_Angularjs_Angular - Fatal编程技术网

Javascript Angular2 http.get代码不工作

Javascript Angular2 http.get代码不工作,javascript,angularjs,angular,Javascript,Angularjs,Angular,我正在Angular2 beta 15中试用这段代码 import {Component} from 'angular2/core'; import {Http, Response} from 'angular2/http'; @Component({ selector: 'my-app', template: ` <h2>Basic Request</h2> <button type="button" (click)="m

我正在Angular2 beta 15中试用这段代码

import {Component} from 'angular2/core';
import {Http, Response} from 'angular2/http';

@Component({
    selector: 'my-app',
    template: `
      <h2>Basic Request</h2>
      <button type="button" (click)="makeRequest()">Make Request</button>
      <div *ngIf="loading">loading...</div>
      <pre>{{data.title}}</pre>

    `

})
export class AppComponent {

    data: any;
    loading: boolean;

    constructor(public http: Http) {
    }
    makeRequest(): void {
        this.loading = true;
        this.http.get('http://jsonplaceholder.typicode.com/photos/1')
            .map((res: Response) => res.json())
            .subscribe(res => {
                this.data = res;
                this.loading = false;
            });
    }

}
从'angular2/core'导入{Component};
从'angular2/Http'导入{Http,Response};
@组成部分({
选择器:“我的应用程序”,
模板:`
基本要求
请求
加载。。。
{{data.title}
`
})
导出类AppComponent{
资料:有;
加载:布尔;
构造函数(公共http:http){
}
makeRequest():void{
这是。加载=真;
this.http.get('http://jsonplaceholder.typicode.com/photos/1')
.map((res:Response)=>res.json())
.订阅(res=>{
这个数据=res;
这一点:加载=错误;
});
}
}
出于某种原因,它获取数据,但不显示数据


我在这里错过了什么?

一切看起来都很好,只需更改为:


一切正常,只需更改为:


我的代码在“angular2”:“2.0.0-beta.15”上运行良好

从'angular2/core'导入{Component};
从'angular2/HTTP'导入{HTTP_提供者,HTTP,响应};
//请参阅此处的问题详细信息:https://github.com/angular/angular/issues/5632#issuecomment-167026172
进口“rxjs/Rx”;
@组成部分({
选择器:“我的应用程序”,
模板:`
基本要求
请求
加载。。。。。。
标题:{{array.title}
`,
提供者:[HTTP\u提供者]
}
导出类AppComponent{
数组=数组
  • 导入
    导入“HTTP\u提供者”
  • 添加提供程序:
    [HTTP\u提供程序]

    • 我的代码在
      angular2:“2.0.0-beta.15”上运行良好

      从'angular2/core'导入{Component};
      从'angular2/HTTP'导入{HTTP_提供者,HTTP,响应};
      //请参阅此处的问题详细信息:https://github.com/angular/angular/issues/5632#issuecomment-167026172
      进口“rxjs/Rx”;
      @组成部分({
      选择器:“我的应用程序”,
      模板:`
      基本要求
      请求
      加载。。。。。。
      标题:{{array.title}
      `,
      提供者:[HTTP\u提供者]
      }
      导出类AppComponent{
      数组=数组
      
    • 导入
      导入“HTTP\u提供者”
    • 添加提供程序:
      [HTTP\u提供程序]

    您的
    加载
    属性是否得到正确更新?它只是说加载…并且响应为null您的
    加载
    属性是否得到正确更新?它只是说加载…并且响应为null Getting response null…没有数据传入Getting response null…没有数据传入inIt。如何捕获http请求错误或者?也喜欢请求错误代码。您可以在订阅之后执行.catch(err=>console.log(“这是我的错误”,err))。它可以工作。我如何捕获http请求错误?也喜欢请求错误代码。您可以在订阅之后执行.catch(err=>console.log(“这是我的错误”,err))。 {{data?.title}}
    import 'rxjs/Rx';
    
    import {Component} from 'angular2/core';
    import {HTTP_PROVIDERS,Http,Response} from 'angular2/http';
    // see issue more detail here : https://github.com/angular/angular/issues/5632#issuecomment-167026172
    import 'rxjs/Rx';
    
    
    
    @Component({
        selector: 'my-app',
        template: `
          <h2>Basic Requests</h2>
          <button type="button" (click)="makeRequest()">Make Request</button>
          <div *ngIf="loading">loading......</div>
          <pre>title : {{array.title}}</pre>
    
        `,
        providers: [HTTP_PROVIDERS]
    }
    export class AppComponent {
    
        array = Array<any>;
        loading: boolean;
    
        constructor(
            public http:Http
        ){
    
        }
        makeRequest(): void {
            this.loading = true;
            this.http.get('http://jsonplaceholder.typicode.com/photos/1')
            .map((res: Response) => res.json())
                .subscribe(res => {
                    this.array = res;
                    this.loading = false;
                });
    
        }
    
    }