我在这里遇到了一个奇怪的问题。我想在“ParentView”中的渲染Ember.CollectionView中捕获一个Action。
{{#collection contentBinding="view.content"}}
<a href="#" {{action insideCollection target="parentView">{{view.content}}</a>
{{/collection}}
但是CollectionView中的parentView仍然是View的子类,而不是ParentView本身(在我的示例中是ApplicationView)。那么,我怎样才能在ApplicationView中捕获Handlebars-Action?
以下是您自己查看问题的小提琴:http://jsfiddle.net/smgMt/3/
任何想法?
答案 0 :(得分:4)
使用collection
帮助程序时,会为块中的每个内容创建一个隐式视图。所以在这里,如果你想访问ApplicationView,你必须调用两次parentView。
第二个提示是您必须使用关键字view
为此链添加前缀以访问当前视图属性。
<script type="text/x-handlebars" data-template-name="application">
<h1>Hello from Ember.js</h1>
<button {{action test target="view"}}>Click to Test</button>
{{#collection contentBinding="view.content" tagName="ul"}}
<a href="#" {{action insideAction target="parentView.parentView"}}>{{view.content}}</a>
{{/collection}}
</script>