1
在餘燼中,我們有行動助手;我會如何寫一個sendAction助手?
{{action "actionName" arg1 arg2}}
但是,當我想送行動父組件,我還是要明確地寫在調用sendAction孩子的動作。即使我只是冒泡行動。我希望避免使用send-action幫助器;
{{send-action "actionKey" arg1 arg2}}
有誰知道我該如何實現這個幫手?
在餘燼中,我們有行動助手;我會如何寫一個sendAction助手?
{{action "actionName" arg1 arg2}}
但是,當我想送行動父組件,我還是要明確地寫在調用sendAction孩子的動作。即使我只是冒泡行動。我希望避免使用send-action幫助器;
{{send-action "actionKey" arg1 arg2}}
有誰知道我該如何實現這個幫手?
您應該使用關閉操作來代替,如Triggering Changes with Actions所示。
因此,如果您在名爲actionKey
的父組件中執行了一項操作,請執行以下操作。
它傳遞到子組件的封閉動作:
{{my-component myName=(action 'actionKey')}}
,然後在子組件的模板:
<button {{action myName arg1 arg2}}>click me</button>
我用myName
用於說明目的,它可以是任何只要它與組件內使用的名稱相匹配即可。
我已經在一個旋轉複製上述:https://ember-twiddle.com/fd56b0b9d017968fc334b3f109760806。
我試圖模仿你的模式,但我不斷收到錯誤; '沒有動作處理程序:'actionKey' –
等待,我的錯誤是其他地方,我認爲這是正確的答案。解決方法是使用'myName'而不是''myName'' 因此,如果您不介意後續問題,我將如何在控制器(而不是模板)中實例化閉包動作,以便通過引用它周圍。這可能嗎? –
問路!把它傳給誰?我上面展示的模板語法是將閉包動作傳遞給組件的方式。 – locks