【问题标题】:Different ways to do EventEmitter - Angular执行 EventEmitter 的不同方法 - Angular
【发布时间】:2019-02-18 16:06:10
【问题描述】:

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

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

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

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

【问题讨论】:

    标签: angular angular6 eventemitter angular-event-emitter


    【解决方案1】:

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

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

    【讨论】:

    • 你的答案是正确的,但它只回答了他问题的第二部分
    • 不同之处只是你写了更多的代码。除此之外没有区别
    【解决方案2】:

    @输出 balanceDueLoader = new EventEmitter();

    @输出 balanceDueLoader = new EventEmitter(false);

    @输出() balanceDueLoader: EventEmitter = new EventEmitter();

    其实没有区别

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

    第三个的唯一区别是您为其分配了一个类型,该类型将允许您理想的代码完成。

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

    【讨论】:

      猜你喜欢
      • 2013-03-03
      • 1970-01-01
      • 2022-11-06
      • 2017-10-24
      • 1970-01-01
      • 2020-09-26
      • 2011-10-18
      • 1970-01-01
      • 2021-10-19
      相关资源
      最近更新 更多