UI-Router を使用して、アプリケーションにいくつかの「メニュー」を追加しています。
$stateProvider.state("list"
url: "/Focales"
templateUrl: "/demo/focals.html"
controller: FocalCtrl)
$stateProvider.state("collection"
url: "/Collections"
templateUrl: "/demo/collections.html"
controller: CollectionCtrl)
私の CollectionCtrl では、サーバーで行われた処理をトリガーし、このような情報を表示するのを待っています (CoffeeScript)
Progress = $resource('/collections/getProgress')
$scope.getProgress = () ->
prg = Progress.get {}, ->
$scope.currentProgress = prg
$scope.getProgress() if prg.end isnt true
私の問題: ユーザーが Focal に移動して CollectionCtrl に戻ると、CollectionCtrl の新しいインスタンスが作成されます。私が理解している限り、 $scope.getProgress コードは引き続きデータを受け取りますが、 PREVIOUS CollectionCtrl の場合 (表示は更新されません...)
CollectionCtrl の新しい「インスタンス」ではなく、以前の Controller を取得することは可能ですか? 新しい CollectionCtrl が作成されるのはなぜですか? 最良のアプローチは何ですか: $scope.currentProgress = prg ではなく $state.currentScope = prg を実行できるように、現在の $scope を格納する状態データを取得したいと考えています。それは良いアプローチですか?
ありがとう !