1. ホーム
  2. angularjs

[解決済み】現在の状態を再読み込みする方法は?

2022-04-30 07:33:54

質問

Angular UI Routerを使用していますが、現在の状態を再読み込みして、すべてのデータを更新し、現在の状態とその親のコントローラを再実行したいと思います。

私は3つの状態レベルを持っています。 ディレクトリ.組織.詳細

ディレクトリ.オーガナイザー には、組織のリストを含むテーブルが含まれています。テーブルの項目をクリックすると ディレクトリ.オーガナイザーズ.ディテール で、$StateParamsにアイテムのIDを渡します。つまり、詳細の状態では、このアイテムの詳細をロードし、編集し、データを保存します。これまでのところ、すべて順調です。

次に、この状態を再読み込みして、すべてのデータを更新する必要があります。

試してみました。

 $state.transitionTo('directory.organisations');

これは親の状態に移動しますが、コントローラは再読み込みされません。パスが変更されていないからでしょう。理想的には ディレクトリ.組織.詳細 の状態で、親のデータもすべて更新してください。

も試しました。

$state.reload()

API WIKIで$state.reload "(コントローラの再定義に関するバグで現在修正中)."で見たことがあります。

何かお手伝いできることがあれば、教えてください。

解決方法は?

AngularJS V.1.2.2 で動作します。

$state.transitionTo($state.current, $stateParams, {
    reload: true,
    inherit: false,
    notify: true
});