我对Ember/Handlebar视图有一个神秘的问题。我正在尝试在Handlebar视图中实现非常简单的数据绑定。这在通过执行以下操作呈现我的视图时可以正常工作:
Ember.Views.NavView.create().append()
但是当我尝试使用{{view}}助手呈现同一视图的另一个实例时,不会显示绑定属性,如下所示:
<script type="text/x-handlebars">
{{view App.Views.NavView}}
</script>
在第一种情况下,属性(在这个测试用例的视图上硬编码)被正确显示。在第二种情况下,我得到了“metamorph-0-start”和“metamorph-0-end”标签,但没有呈现值本身。
我已经建立了一个JSFiddle(http://jsfiddle.net/XUyht/2/)来清楚地说明这个问题。
您会看到我已经渲染了两次视图:第一次使用{{view}}助手,第二次使用append()-但属性“工作”仅在后一种情况下显示。
这是怎么回事?
我不知道你为什么需要这种模板的实现,但是不管怎样,因为1.0-press,视图的默认上下文要么是它的控制器,要么是它的父视图。所以在你的例子中,如果你用view.tmp.foo
替换tmp.foo
,这是有效的。
看http://jsfiddle.net/Sly7/amLfk/