我有一种情况,我需要制作一个组件,并且它有一些逻辑可以渲染为按钮或 DIV,具体取决于它是否有链接。
{{#let
(if
this.hasLink
(component "external-library-button$special-button")
(element "div")
)
as |MaybeAButton|
}}
<MaybeAButton
{{on "click" this.onClick}} // can this be dynamically added?
>
...lots of nested code
</MaybeAButton>
{{/let}}
我尝试动态添加它,但收到错误“on”不在范围内。
{{(if this.hasLink (modifier on "click" this.onClick))}}
动态添加点击处理程序的好方法是什么? 如果监听器不具有交互性,我不想添加监听器。
我决定将其作为临时解决方案,但我不确定我是否真的想要它。
{{on "click" (if this. hasLink this. onClick null)}}