EmberJS - 使用每个块内的控制助手退出一个表

时间:2013-11-25 20:15:25

标签: javascript ember.js

我在使用每个块内的控件助手退出表时遇到了一些麻烦。我有这个余烬应用程序:

window.App = Ember.Application.create();

App.ApplicationController = Ember.Controller.extend({
    rows: function(){
        return [
            Ember.Object.create({rowNum: 1}),
            Ember.Object.create({rowNum: 2}),
            Ember.Object.create({rowNum: 3})
        ]
    }.property()
});

App.RowController = Ember.Controller.extend({
    cols: function(){
        return [
            Ember.Object.create({colNum: 1}),
            Ember.Object.create({colNum: 2}),
            Ember.Object.create({colNum: 3})
        ]
    }.property()
});

这个模板:

<script type="text/x-handlebars" data-template-name="application"> 
    <table>
        <tr>
            <th></th>
            <th>Col 1</th>
            <th>Col 2</th>
            <th>Col 3</th>
        </tr>
        {{#each row in rows}}
            {{#control "row" row}}
                <tr>
                    <td>{{content.rowNum}}</td>
                    <td></td>
                    <td></td>
                    <td></td>
                </tr>
            {{/control}}
        {{/each}}
    </table>
    <hr />
    <table>
        <tr>
            <th></th>
            <th>Col 1</th>
            <th>Col 2</th>
            <th>Col 3</th>
        </tr>
        {{#each row in rows}}
            {{#control "row" row}}
                <tr>
                    {{content.rowNum}}
                </tr>
            {{/control}}
        {{/each}}
    </table>
</script>

http://jsfiddle.net/charlieridley/AQ5gc/7/

第一个表呈现错误地显示循环的每次迭代的最后一个值,但是当我删除时 块从正确呈现值。这是预期的行为吗?

1 个答案:

答案 0 :(得分:1)

this commit中的1.3.0-beta以来,控制助手已被删除。 我建议您更改为render查看助手。

您的示例使用渲染http://jsfiddle.net/marciojunior/2FvRh/