1

我正在尝试将 Ember.Data 集成到我的应用程序中,并且还想了解如何正确使用ArrayController. 不幸的是,我什至没有绕过控制器上的简单数据绑定。

我根本不知道我哪里出错了,所以我完全希望有人能够指出:嘿,你写的是 .extend 而不是 .create

我正在尝试一些与 Discouse 在他们所做的非常相似的事情AdminSiteSettings

有问题的控制器:

App.UsersController = Ember.ArrayController.extend({
    foo: 'bar'
});

路线:

App.UsersRoute = Ember.Route.extend({
    model: function () {
        var users = App.User.find();
        return users;
    },
    setupController: function (controller, model) {
        controller.set('model', model);
        console.log(controller.get('foo'));  // this works correctly => bar
    }
});

唯一的问题:正在渲染模板,但我无法绑定到foo属性:

<script type="text/x-handlebars" data-template=name="users">
    We render the correct template
    {{foo}}
</script>

唯一的问题是:模板从不呈现“栏”。它只是空的。

现在我在 Discourse 中发现了类似的东西,它们绑定了一个文本框filterhttps ://github.com/discourse/discourse/blob/master/app/assets/javascripts/admin/controllers/admin_site_settings_controller.js

我真的不明白为什么我的控制器属性没有出现,(是的,我实际上正在尝试让 Ember.data 工作,但由于没有它可以很容易地复制它,我想我会满足于简单的foo: bar属性: (

正在使用的版本

  • Ember.js:v1.0.0-rc.4-23-gbfd3023
  • 车把:1.0.0-rc.4
  • 余烬数据:13

欢迎任何指点。谢谢!

4

1 回答 1

2

我不知道你的应用程序在哪里失败,但我试图重新创建你的用例,在这个例子中jsbin它工作正常,看看。

希望能帮助到你。

于 2013-06-29T18:52:15.313 回答