ember 内の最初のルートで発生したエラーを処理したいと思います。エラー アクションが呼び出された場合は、別のルートにリダイレクトします。
エラーが発生したときにこれが最初のルートであるかどうかをどのように判断し、最初のルートである場合は、インデックスなどのルートに再ルーティングします。しかし、それが最初のルートでない場合は、true を返してエラーを発生させます。
遷移オブジェクトを再試行するたびにこのエラーが発生します
不明なエラー: アプリが最初のルートへの移行を完了していないため、アクション「エラー」をトリガーできません。遷移中に宛先ルートでアクションをトリガーするには、 フックに渡され
.send()
た オブジェクトを呼び出すことができます。Transition
model/beforeModel/afterModel
これが私のセットアップです:
ember.js:15373 DEBUG: Ember : 1.8.1
ember.js:15373 DEBUG: Handlebars : 1.3.0
ember.js:15373 DEBUG: jQuery : 1.11.3
ember.js:15373 DEBUG: Ember Model : 0.0.14
これは、他のすべてのルートが継承する親ルートになります
export default Ember.Route.extend({
//This can sometimes return a 500 and i want to re-route incase of error.
model: function(params) {
return CopyTree.fetchById({
treeType: params['treeType'],
id: params['id']
});
},
actions: {
error: function(error, transition) {
//FAKE CODE NOT SURE HOW TO TELL I AM IN THE FIRST ROUTE
if(this.firstRoute){
this.transitionTo('index');
} else{
return true;
}
}
}
});