【发布时间】:2020-02-27 12:34:47
【问题描述】:
Angular 中的 ... 是什么?它叫什么? 我在想 addFlash 方法中的 "...flash" 有什么用,它是 array.push() 中的一个参数?
如果我们可以使用 this 关键字,为什么在 toggleFlash 方法中还有“...”?
flashs: IFlash[] = [];
flashs$ = new BehaviorSubject<IFlash[]>(this.flashs);
addFlash(flash: IFlash) {
this.flashs.push({
...flash,
show: false,
id: getRandomNumber()
});
}
toggleFlash(id: number) {
const index = this.flashs.findIndex(flash => flash.id === id);
this.flashs = [
...this.flashs.slice(0, index),
{
...this.flashs[index],
show: !this.flashs[index].show
},
...this.flashs.slice(index + 1)
];
this.flashs$.next(this.flashs);
}
【问题讨论】:
-
这是 ES6 的一个特性,Spread Syntax,不是 Angular 的一部分。 developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/…
-
@TonyNgo 我认为不是。因为我的问题听起来我真的不知道它是什么以及它叫什么。
标签: angular typescript