我遇到过必须为父标记和子标记添加操作的情况。 例如;
{{#each thread in messageThreads}}
<div {{bind-attr class=":details-container thread.firstObject.recent:active"}}>
{{#link-to "student-messages.show" thread.firstObject class="row medium-text message-detail"}}
<div class="col-md-12 col-xs-12 col-sm-12 message-snippets">
<div class="row message-content">
<span class="col-md-11 col-xs-10 col-sm-10 medium-text">
{{display-html thread.firstObject.body}}
{{thread.firstObject.subject}}
{{#if thread.firstObject.isAnnouncement}}
<span class="view-file-list" {{action 'viewFileList' thread.firstObject.sections.firstObject}}>{{_ "VIEW FILE LIST"}}</span>
{{/if}}
</span>
</div>
</div>
{{/link-to}}
</div>
{{/each}}
在控制器中定义的viewFileList 操作将重定向到另一个资源(使用transitionToRoute)。在这里,我遇到一个问题,当我点击 viewFileList 操作时,它不会重定向到相应的路线,而是重定向到父链接(student-messages.show)。如果我把&#34; view-file-list&#34;在{{link-to}}之外的范围,它工作正常。
在我的项目中,有许多地方我必须使用这样的嵌套链接。 任何人都可以指出这个问题或建议任何其他方式来实现这个概念。
提前致谢。
答案 0 :(得分:0)
可能是事件冒泡的情况。您可以尝试在viewFileList操作
中使用bubbles = false{{action 'viewFileList' thread.firstObject.sections.firstObject bubbles=false}}