我的路线中有一个模型,如下所示:
model: function () {
return {
"first-levels":this.get('store').findAll('student')
};
}
默认情况下,findAll是异步还是同步调用的?可以覆盖默认行为吗?
答案 0 :(得分:4)
如果你返回普通对象,那么模型钩子不会等待Promises重新开始,所以它会立即返回。
model: function () {
return {
"first-levels":this.get('store').findAll('student')
};
}
但是如果你像下面那样返回它,那么模型钩子将等待Promise解决,
model: function () {
return this.get('store').findAll('student');
}
注意:findAll
将从商店获取结果并立即返回,并在后台,它将要求适配器再次获取并更新商店。可以使用this.get('store').findAll('student',{reload:true})
来控制此行为。有关详细信息,请参阅findAll api guide