'<hero []>'是什么意思

时间:2018-01-20 10:14:58

标签: angular typescript

嗨,我是angulartypescript的新手,我正在尝试从angular学习教程。我找到了一些我不明白的意思。像:

1

getHeroes(): Observable<Hero[]> {
    this.messageService.add('HeroService: fetched heroes');
    console.log(this.http);
    return this.http.get<Hero[]>(this.heroesUrl);
}

在上面的示例中,我想知道<Hero[]>Observable<Hero[]>this.http.get<Hero[]>(this.heroesUrl)

的含义getHero(id: number): Observable<Hero> { this.messageService.add(`HeroService: fetched hero id=${id}`); return of(HEROES.find(hero => hero.id === id)); }

2

HeroService: fetched hero id=${id}

HEROES.find(hero => hero.id === id)上仔细检查它用反引号(`)包裹而不是单引号(')。为什么要用它? 最后一个=> JSONObject c = //Your jsonObject; String position = c.getInt("position"); String number = c.getInt("number"); if(position!=null){ //TODO You know it is position and it's int value }else if(number!=null){ //TODO You know it is number and it's int value }else{ //TODO Its neither of two } 是什么意思?

我真的很陌生。所以,如果我的问题冒犯或触发你们,我很抱歉..

谢谢!

2 个答案:

答案 0 :(得分:1)

方法getHeroes()返回Hero类型数组的Observable。 Backtick(`)称为模板文字。早些时候我们曾经写过

let a = 10
b = 5 ;
console.log("value of a is" + a + " and the value of b is " + b);

使用模板文字我们可以写

console.log(`value of a is ${a} and value of b is ${b}`)

其中$ {expression}可用于绑定表达式。

=&GT;被称为胖箭。

let example = function(str){
  console.log(str)
}

现在可以用这种方式用胖箭头写

let example = (str) =>{
  console.log(str)
}

请仔细阅读ES6的文档以便更好地理解。模板文字和胖箭头在ES6中实现。

答案 1 :(得分:0)

Observable<Hero[]> 表示getHeroes方法rObservable返回一个Observable,它包含Hero Hero 类型的数据,其中 {{1 } 表示数组;

`(反引号)在javascript中被称为template literal

文字内的表达式(其值在运行时计算并包含在文字产生的最终值中)括在花括号{}中,带有前面的美元符号$。