如何在angular 2中传递模板中的数据?

如何在angular 2中传递模板中的数据?,angular,Angular,但是当我这样做时:console.log(this.user.email)我没有定义 这是我的共享服务: object isLoggedIn: trueuser: Object created_at: "2017-03-14 09:04:42"email: "user@user.com"id: 4name: "user"updated_at: "2017-03-14 09:04:42"__proto__: Object__proto__: Object 如果返回JSON,请确保返回的数组或JS

但是当我这样做时:
console.log(this.user.email)
我没有定义

这是我的共享服务:

object isLoggedIn: trueuser: Object created_at: "2017-03-14 09:04:42"email: "user@user.com"id: 4name: "user"updated_at: "2017-03-14 09:04:42"__proto__: Object__proto__: Object

如果返回JSON,请确保返回的数组或JSON会有所不同。请确保使用res.JSON()方法将响应转换为JSON 若你们返回一个对象数组,那个么它会显示为你们看到的,像数组一样访问它

//这是你的服务

import {Component, Injectable } from '@angular/core';

export class User{
 email:string;
 name:string;
}

@Injectable()
export class SharedService{
  user:User;
  setUserDetail(res){
   this.user=res;
  }
  getUserDetail(){
    return this.user;
  }
}
getHeroes():承诺{
回报承诺。决心(英雄);
}
//这是您访问数据的方式

     getHeroes(): Promise<Hero[]> {
    return Promise.resolve(HEROES);
  }
英雄:英雄[];
构造函数(私有heroService:heroService){}
ngOnInit(){this.getHeroes();}
getHeroes(){
this.heroService.getheros()
.订阅(
英雄=>这个。英雄=英雄,
error=>this.errorMessage=error);
}

{{this.user.email}}
更改为
{{user.email}}
,您不需要告诉模板您引用的是“this”,因为它是自动注入的。我尝试过,但它是空的。我不知道ss.getUserDetail()返回什么?(对象键)你确定用户不是空的吗?我现在更新了我的问题,我需要在哪里更新?好吧,看看服务返回类型…什么是返回类型??setUserData(data:any):void{this.userData=data;}getUserData():any{return this.userData;}但是如果我说return this.userData.json()我收到一个错误我更新了我的问题,我在哪里使用sharedService使用web服务或演示数据设置数据单元??
     getHeroes(): Promise<Hero[]> {
    return Promise.resolve(HEROES);
  }
heroes: Hero[];
  constructor (private heroService: HeroService) {}
  ngOnInit() { this.getHeroes(); }
  getHeroes() {
    this.heroService.getHeroes()
                     .subscribe(
                       heroes => this.heroes = heroes,
                       error =>  this.errorMessage = <any>error);
  }