嗨,我是angular
和typescript
的新手,我正在尝试从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
}
是什么意思?
我真的很陌生。所以,如果我的问题冒犯或触发你们,我很抱歉..
谢谢!
答案 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
文字内的表达式(其值在运行时计算并包含在文字产生的最终值中)括在花括号{}中,带有前面的美元符号$。