2

ターゲット (動的 ID を含む) が現在のルートと一致する場合、トランジションを中止する一般的な方法 (アプリケーション ルーターなど) はありますか?

私は willTransition にフックしようとしましたが、見つけた transition.params には現在の ID が含まれているようで、それらを比較するものは何もありません。

4

2 に答える 2

1

遷移のparams属性は、ターゲットではなく、現在のルートのパラメーターを参照します。必要なのは、そのprovidedModels属性を介してトランジションに提供されるモデルを確認することです。コードは次のようになります。

willTransition: function(transition) {
  if ((this.get('routeName') === transition.targetName) &&
      (this.get('currentModel') === transition.providedModels[transition.targetName])) {
    transition.abort();
    return;
  }

  // ... other code here ...
}
于 2013-12-22T06:31:13.170 に答える