在子视图中未设置parentView属性

时间:2013-04-17 12:19:21

标签: javascript ember.js

有人可以解释为什么Ember.Handlebars.helpers Class API文档中的这个简单示例对我不起作用吗?

<html>
<head>
</head>
<body>
  <script src="js/libs/jquery-1.9.1.js"></script>
  <script src="js/libs/handlebars-1.0.0-rc.3.js"></script>
  <script src="js/libs/ember-1.0.0-rc.2.js"></script>
  <script>
    aView = Ember.View.create({
    template: Ember.Handlebars.compile("{{#view}} aview: my parent:{{parentView.elementId}} {{/view}}")
    });

    aView.appendTo('body');
  </script>
</body>
</html>

这只是输出:

aview: my parent:

没有任何elementId。在其他代码我用parentView玩是未定义??

1 个答案:

答案 0 :(得分:1)

根据我的评论回答。

在Handlebars中的视图模板中,可以通过View访问view.propertyName类实现(或通用的自动生成的视图类)中定义的属性。由于parentView是当前视图的属性,因此应该执行类似于以下操作的内容:

{{#view}} 
    aview: my parent:{{view.parentView.elementId}} 
{{/view}}