1

我从 ember.js 开始,在尝试 ember.js 文档(http://docs.emberjs.com/symbols/Handlebars.helpers.html#.collection)中遇到了麻烦。

此应用程序代码:

App = Ember.Application.create()
App.items = [
  Ember.Object.create({name: 'Dave'}),
  Ember.Object.create({name: 'Mary'}),
  Ember.Object.create({name: 'Sara'})
]

使用此模板代码:

{{#collection contentBinding="App.items"}}
    Hi {{content.name}}
{{/collection}}

结果如下:

<div id="ember122" class="ember-view">    
    <div id="ember142" class="ember-view">    
        <div id="ember149" class="ember-view">  Hi    
            <script id="metamorph-0-start" type="text/x-placeholder">    
            </script>    
            <script id="metamorph-0-end" type="text/x-placeholder">    
            </script>    
        </div>    
        <div id="ember150" class="ember-view">  Hi    
            <script id="metamorph-1-start" type="text/x-placeholder">    
            </script>    
            <script id="metamorph-1-end" type="text/x-placeholder">    
            </script>    
        </div>    
        <div id="ember151" class="ember-view">  Hi    
            <script id="metamorph-2-start" type="text/x-placeholder">    
            </script>    
            <script id="metamorph-2-end" type="text/x-placeholder">    
            </script>    
        </div>    
    </div>    
</div>

因此,它有效地遍历对象,但无法返回每个对象的名称值。为什么是这样?也许这些文档已经过时了?有没有更好的方法来达到预期的结果(迭代项目)?感谢您的回答。

4

2 回答 2

2

我认为您使用的是 ember-latest 或 1.0-pre,在这种情况下,您必须content.name使用view. 自 1.0 pre 以来,上下文的检索发生了变化。请参阅:Ember.js:Handlebars 没有显示任何内容以供进一步解释。

也就是说,文档不是最新的。您可以发布带有修复程序的拉取请求吗?

于 2012-08-19T18:11:43.823 回答
0

这个例子很好用:http: //jsfiddle.net/secretlm/qD6az/3/

希望这可以帮助。

于 2012-08-19T17:16:24.337 回答