Ember.js将闭包动作传递给嵌套组件的正确语法

时间:2018-05-09 13:25:26

标签: ember.js

当通过一些嵌套组件向下传递闭包动作时,使用动作助手(第一张图像)向下传递动作与简单地将动作作为属性传递(第二张图像)之间是否存在差异?

Passing action down with the action helper

Passing action down as a property

1 个答案:

答案 0 :(得分:6)

TLDR;号

前者是Ember中closure actions的原始和记录实现。但是,后者在Ember 2.10或更高版本中也能正常工作,并且与未来简化的Glimmer component proposal兼容。

有一些问题使用后一种语法,但是,您可能会意外地覆盖一些重要的组件方法,如destroy()

有关更多背景信息,请参阅Actions best practices

您可能也对Events deep dive感兴趣,这将解释在Ember中处理事件的各种方式之间的所有差异。

这个答案是在Ember 3.1时写的,应该适用于版本2.10 - 3.x。