我有打字稿或javascript语法问题。 谁能告诉我_ => this.log ...意味着什么?
我习惯于看到一个名称,参数传递给那里的箭头函数。
它只是意味着没有参数'?
参考:https://angular.io/tutorial/toh-pt6#add-heroserviceupdatehero
/** PUT: update the hero on the server */
updateHero (hero: Hero): Observable<any> {
return this.http.put(this.heroesUrl, hero, httpOptions).pipe(
tap(_ => this.log(`updated hero id=${hero.id}`)),
catchError(this.handleError<any>('updateHero'))
);
}
答案 0 :(得分:4)
它只是一个命名参数的概念,该参数不会在函数中使用。
相反,他们会这样写:
tap(() => this.log(`updated hero id=${hero.id}`)),
如果您想了解更多内容,this post是一个良好的开端。
答案 1 :(得分:0)
() => {console.log('Hello World')}
和
_ => {console.log('Hello World')}
如果您的函数不需要参数,两者都是相同的。
下划线(_)只是一个可抛弃的变量,这意味着它可以是任何变量名,因为它将永远不会被使用。只是他们通常使用下划线表示该函数不需要参数。
我使用()=>编写了不带参数的函数,但是我看到了很多使用下划线的版本,所以很高兴理解它。