Ember.js 如何在init上基于模型解析进行POST调用
我是余烬的新手,需要你的帮助 在application/route.js中,我需要根据模型得到的响应进行POST调用。route.js中的类似内容:Ember.js 如何在init上基于模型解析进行POST调用,ember.js,Ember.js,我是余烬的新手,需要你的帮助 在application/route.js中,我需要根据模型得到的响应进行POST调用。route.js中的类似内容: export default Route.extend({ ajax: inject.service(), details: inject.service(), model() { return this.get('details').fetchAccount(); }, 所以,一旦模型在init上得到解决,我就需要
export default Route.extend({
ajax: inject.service(),
details: inject.service(),
model() {
return this.get('details').fetchAccount();
},
所以,一旦模型在init上得到解决,我就需要打个电话。模型具有状态,如果为true,则运行调用
init() {
if (model.user) {
...
}
}
有什么想法可以实现吗?您可以指导
model
方法在fetchAccount
方法的承诺得到解决时做什么:
model() {
let fetchedAccount = this.get('details').fetchAccount();
fetchedAccount.then(account => {
doTheThingWith(account); // Obviously, your own code here
});
return fetchedAccount;
}
您可以指示
model
方法在fetchAccount
方法的承诺解决时要做什么:
model() {
let fetchedAccount = this.get('details').fetchAccount();
fetchedAccount.then(account => {
doTheThingWith(account); // Obviously, your own code here
});
return fetchedAccount;
}
如果this.get('details').fetchAccount()未返回承诺,则可以尝试使用setupController
hook
setupController(controller,model){
this._super(...arguments);
if (model.user) {
...
}
}
这完全取决于模型解析后要执行的操作,是否要为控制器设置任何属性,然后可以使用setupController挂钩。如果this.get('details')。fetchAccount()
没有返回承诺,则可以尝试使用setupController
挂钩
setupController(controller,model){
this._super(...arguments);
if (model.user) {
...
}
}
这完全取决于模型解析后要做什么,您是否要将任何属性设置为控制器,然后您可以使用setupController挂钩。您可以使用afterModel
路线挂钩 您可以使用afterModel
hook of route 谢谢你,克里斯!让我试试。嗨,克里斯,我出错了。TypeError:“调用者”和“参数”是受限制的函数属性,无法在此上下文中访问。我正试着这么做。然后(account=>{console.log(account);});我不确定我是否能够帮助你,但是你可能想考虑用代码从<代码> FETCAcQuangter()/代码>更新你的问题,以便其他人可以帮助你。我的主要经验是使用余烬数据,而不是滚动我自己的承诺结构。够公平了!谢谢你,克里斯!谢谢你,克里斯!让我试试。嗨,克里斯,我出错了。TypeError:“调用者”和“参数”是受限制的函数属性,无法在此上下文中访问。我正试着这么做。然后(account=>{console.log(account);});我不确定我是否能够帮助你,但是你可能想考虑用代码从<代码> FETCAcQuangter()/代码>更新你的问题,以便其他人可以帮助你。我的主要经验是使用余烬数据,而不是滚动我自己的承诺结构。够公平了!谢谢你,克里斯!我不使用余烬数据。我不确定它是否会起作用,但谢谢你的评论。即使你不使用余烬数据,你也可以使用它。我们也没有使用ember数据:)如果fetchAccount()
返回一个承诺,在承诺解决后afterModel
将执行路由钩子。我不使用ember数据。我不确定它是否会起作用,但谢谢你的评论。即使你不使用余烬数据,你也可以使用它。我们也不使用余烬数据:)如果fetchAccount()
返回一个承诺,在承诺解决后afterModel
将执行路由钩子。控制器上没有设置。解决问题后,如果是真的,我需要运行POST调用。您可以在if
块中尝试运行POST调用。控制器上没有设置。解决问题后,如果是真的,我需要运行POST调用。您可以在if
块中尝试运行POST调用。