我对 Ember/Handlebars View 有一个神秘的问题。我正在尝试在 Handlebars View 中实现非常简单的数据绑定(bind)。当通过执行以下操作渲染我的 View 时,这可以正常工作:
Ember.Views.NavView.create().append()
但是当我尝试使用 {{view}} 帮助器渲染同一 View 的另一个实例时,不会显示绑定(bind)属性,如下所示:
<script type="text/x-handlebars">
{{view App.Views.NavView}}
</script>
在第一种情况下,属性(在该测试用例的 View 上硬编码)正确显示。在第二种情况下,我得到“metamorph-0-start”和“metamorph-0-end”标签,但值本身未呈现。
我已经设置了一个 JSFiddle ( http://jsfiddle.net/XUyht/2/ ) 来清楚地说明问题。
您会看到我已渲染 View 两次:第一次使用 {{view}} 帮助器,第二次使用append() - 但属性“working”仅在后一种情况下显示。
这是怎么回事?
最佳答案
我不知道为什么你需要这种模板的实现,但无论如何,从 1.0-pre 开始, View 的默认上下文要么是它的 Controller ,要么是它的父 View 。因此,在您的情况下,如果您将 tmp.foo
替换为 view.tmp.foo
,这是有效的。
关于javascript - Ember.js/ Handlebars : views rendered using {{view}} helper not binding attributes,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12068880/