1

我有一个使用 ember-auth 的 Ember.js 应用程序。

Auth.on("signInSuccess", function() {
  App.currentUser = App.User.find(Auth.currentUserId);
});

我也有一个控制器(见App.currentUser):

App.CustomersIndexController = Ember.ArrayController.extend({
  currentUserBinding: 'App.currentUser'

  customers: null,

  loadCustomers: (function() {
    var company = this.get('currentUser').get('company');
    return this.set('customers', company.get('customers'));
  }).observes('currentUser.company')
});

问题:

绑定不起作用,因为“App.currentUser”为空。控制器在“signInSuccess”事件之前初始化。

“客户”应将当前用户的公司客户作为默认值。控制器还具有逻辑(从显示的代码中删除),因此用户可以将“客户”设置为另一个数组。

4

1 回答 1

2

您可能必须使用set方法来正确通知观察者。

App.set('currentUser', App.User.find(Auth.currentUserId));
于 2013-04-22T00:51:17.230 回答