做EventEmitter的不同方法-Angular

时间:2018-09-13 21:12:39

标签: angular angular6 eventemitter angular-event-emitter

我想知道以下创建EventEmitter的方式有什么区别,哪种更好?

@Output
balanceDueLoader = new EventEmitter<boolean>();

@Output
balanceDueLoader = new EventEmitter<boolean>(false);

@Output()
balanceDueLoader: EventEmitter<boolean> = new EventEmitter<boolean>();

2 个答案:

答案 0 :(得分:4)

编辑:在此处复制我的评论:不同之处仅在于您编写了更多代码。除此之外没有什么不同。

原始答案:当您声明具有初始值的属性时,通常不需要指定类型。从初始值猜测类型。因此,您不需要第三个。构造函数EventEmitter具有一个默认值为false的参数,因此,如果您要使用默认值,则无需传递该参数。因此,选择第一个。它编写的代码更少

答案 1 :(得分:2)

@输出 balanceDueLoader =新的EventEmitter();

@输出 balanceDueLoader = new EventEmitter(false);

@Output() balanceDueLoader:EventEmitter =新的EventEmitter();

实际上没有区别

第一个和第二个完全相同,因为默认情况下该值为false。如果将true传递给事件发射器,这将使事件异步,这将有所不同。默认情况下,它是同步的。

第三个变量的唯一区别是您为其分配了一个类型,该类型将使您可以理想地完成代码。

https://netbasal.com/event-emitters-in-angular-13e84ee8d28c 在这里查看有关事件发射器的更多详细信息