2017-04-03 3 views
0

私はHTMLで次のコードを持っているから戻ってきたときに更新されません。 モーダルで非モーダルでアクセスできる別のhtml/jsページがあります。NGリピートはモーダル呼び出し

私はモーダル呼び出しから戻ってきた後にこれを持っている:

if (!$rootScope.$$listenerCount['sr.CreateDone']) { 
      $rootScope.$on('sr.CreateDone', function(event, data) { 
         ctrl.gmSRs.push(data.sr); 
      $uibModalStack.dismissAll();    
     }); 
    } 

は今...これは実際に何度も繰り返し動作します。しかし、モーダル・ウェイはもはや機能しない非モーダルな方法でターゲットhtml/jsに入る瞬間です。デバッガでは、配列にdata.srオブジェクトが追加されていて、配列が変更されているのがわかりますが、ビューには反映されません。何か案は???私はスコープの問題か、奇妙な角度のバグがあると思います。ここで

を呼び出します:

 ctrl.modalInstance = $uibModal.open({templateUrl: "standardresponse/standardresponse.html", 
     controller: "StandardresponseController", 
     controllerAs: "standardresponseCtrl", 
     size: "lg", 
     keyboard: true, 
     backdrop: 'static', 
     windowClass: "app-modal-window", 
    }); 

また、私は1つだけリスナーが実行されている示したコードの行を追加しました。

+0

実際にスコープの問題に直面しています。モーダルを開くために使用する実際のコードを投稿できる場合は、スコープを修正するのに役立ちます。 – penguin

+0

私は全く同じ問題に直面しています。 – Jalle

答えて

0

アレイが変更されても表示されない場合は、$scopeでダイジェストサイクルが正しく実行されていないことを意味します。 $scope.apply()を呼び出すことでこれを手動で修正できますが、デザインの再検討が必要な場合があります。

+0

ありがとうございますが、実際に試しましたが、エラーが発生します。暗黙の適用の範囲内で申請をしているからです。 – TMM

+0

ああ、それは理にかなっている。どのように非モーダルな方法でページにアクセスしていますか? –

+0

私は次のページを別のページに持っています:\t TMM