问题是如果我将嵌套组件动作的内容冒泡到控制器然后路由.
但是如果没有产生嵌套内容,则可以由父组件处理动作,并且它不会冒泡到父组件模板的控制器并通过路由向上.如果父组件未处理,它也不会抛出任何东西.
希望这个垃圾箱能让它更清晰
问题是:我怎么能从foo-biz发送一个动作到应用程序控制器和路由?
Dan*_*Dan 10
我知道这是一年之后,我确信我们都在使用许多不同的Ember版本(我在Ember-2.2上).无论如何,我有一种情况,我创建了一个接受动态命名的动作的组件,该动作很好地附加到组件的hbs中的一个嵌入式html元素.
{{some-component actionName="doThis" ...}}
Run Code Online (Sandbox Code Playgroud)
...... some-component.hbs看起来像这样:
<button type="button" {{action actionName}}>The doThis Button</button>
<p>Yadda Yadda Yadda</p>
<p>Yadda Yadda Yadda</p>
Run Code Online (Sandbox Code Playgroud)
无论如何,我的期望是我的动作调用doThis会冒泡到我的控制器和路由,我可以处理这种行为并在我的应用程序中重用我的组件......但事实并非如此.
目前,我的解决办法是这样,通过target=this上some-component.这迫使我的doThis动作冒泡到控制器和路线.
{{some-component actionName="doThis" target=this ...}}
Run Code Online (Sandbox Code Playgroud)
请原谅我天真的解决方案,因为我并不认为这是解决这个问题的正确方法,但这让我暂时工作.我会更新任何新发现.
| 归档时间: |
|
| 查看次数: |
2589 次 |
| 最近记录: |