包装器组件

时间:2018-04-16 19:22:33

标签: ember.js

我有一个包装器组件,其中有一个需要从内部触发的操作,但我无法摆脱这个:

    {{#wrapper-component as |wrapper|}}
        <button {{action 'wrapper.myAction'}}
    {{/wrapper-component}}

以上是&#34; componentA&#34;的模板;当我点击按钮时,我收到一条错误消息,指出componentA没有动作处理程序&#34; wrapper.myAction&#34 ;;我无法理解为什么它首先在componentA而不是wrapper-component上查找操作。 当然&#34; myAction&#34;在&#34;动作&#34;中定义on&#34; wrapper-component&#34 ;; 包装器组件具有以下模板:

{{yield (hash myAction=(action 'myAction'))}}

1 个答案:

答案 0 :(得分:2)

替换它:

<button {{action 'wrapper.myAction'}}

用这个:

<button onclick={{action wrapper.myAction}}

请确保您了解ember操作和关闭操作之间的区别。