EmberJS - 未调用计算的标头值

时间:2015-09-18 11:25:52

标签: ember.js

在我的Ember应用程序中,我已经将RESTAdapter子类化,以便为发送到我的api的每个请求动态更新授权标头:

import DS from 'ember-data';
import Ember from 'ember';

export default DS.RESTAdapter.extend({
    user: Ember.inject.service(),
    host: 'https://occasions-wjdhamilton.c9.io',
    headers: Ember.computed(function() {
        this.get('user').getAuthHeaders();
    }),
    handleResponse(status, headers, payload) {
        if (headers['access-token']) {
            this.get('user').setToken(headers['access-token']);
        }
        return this._super(status, headers, payload);
    }
});

然而,计算出的函数没有被调用,我无法解决原因。任何帮助将不胜感激!

1 个答案:

答案 0 :(得分:0)

您需要通过传递“用户”来指定要用于计算标题的属性,并且您还缺少return

headers: Ember.computed('user', function() {
  return this.get('user').getAuthHeaders();
}),

我认为这应该有用。