Emberjs - CollectionView中的把手 - 动作

时间:2012-11-14 12:46:54

标签: ember.js

我在这里遇到了一个奇怪的问题。我想在“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/

任何想法?

1 个答案:

答案 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>​

http://jsfiddle.net/smgMt/14/