当我刷新我的余烬应用程序的索引页面时,似乎无法调用位于 app / routes 中的 index.js 文件中的函数。
我真的不知道如何解决这个问题。
index.js 的源代码:
import Ember from 'ember';
import ProjectRoute from 'web/project-route';
export default ProjectRoute.extend({
authSrv: Ember.inject.service('authentication'),
_title: 'index.title',
_requireAuth: true,
beforeModel()
{
"use strict";
this._super();
},
model()
{
"use strict";
console.log(this.get('authSrv').username);
return {user_id: this.get('authSrv').user_id,
username: this.get('authSrv').username};
}
});
在上面的代码源中,我们可以看到我尝试显示用户名。当我第一次登录此页面时,它显示效果很好,但是当我刷新页面时,它不会显示任何内容 欢迎任何想到它!
答案 0 :(得分:0)
所以我用Ember模块RSVP修复它。基本上,主要问题来自承诺。我没有等待承诺。 index.js 看起来像这样。
import Ember from 'ember';
import ProjectRoute from 'web/project-route';
export default ProjectRoute.extend({
authSrv: Ember.inject.service('authentication'),
_title: 'index.title',
_requireAuth: true,
beforeModel()
{
"use strict";
this._super();
},
model()
{
"use strict";
let promise = new Ember.RSVP.Promise((resolve, reject) =>
{
this.get('authSrv').get('current_auth').promise.then((res) =>
{
resolve({user_id: this.get('authSrv').user_id,
username: this.get('authSrv').username});
});
});
return promise;
}
});