我正在使用 Ember 中的操作,我看到有些人使用指向他们的控制器或他们的视图的目标,如下所示:
{{action saveNote target="view"}
但是,我也看到 Ember 支持事件冒泡,就像 DOM 一样,因为事件将向上传递到应用程序控制器和路由器。
是否有理由指定“视图”或“控制器”?如果我理解正确,模板动作所属的视图/控制器将是第一个接收事件的,那么为什么要指定它呢?
我正在使用 Ember 中的操作,我看到有些人使用指向他们的控制器或他们的视图的目标,如下所示:
{{action saveNote target="view"}
但是,我也看到 Ember 支持事件冒泡,就像 DOM 一样,因为事件将向上传递到应用程序控制器和路由器。
是否有理由指定“视图”或“控制器”?如果我理解正确,模板动作所属的视图/控制器将是第一个接收事件的,那么为什么要指定它呢?
target="controller'
不需要(不再需要?)
target="view"
可以有许多用途,这些用途可能是特定视图的本地,而不是属于控制器。就像切换项目的显示一样。
但是 target 也有其他用例,比如如果你想定位一个你已经声明的控制器needs
,然后可以在controllers.<nameOfController>
确实没有理由以控制器为目标,因为它是默认目标。控制器未处理的事件将从控制器冒泡到路由。
但是,如果您希望视图响应操作,则需要明确定位它。