この機能内からスコープを更新する際に問題が発生しましたupdateRefresh()
。私はmessage == "test"
、それがスコープ内に何上書きされないが、何それは私のHTMLページ上に結合され、<span>{{refreshDomainStatus.message}}</span>
は、まだ私は$scope.$apply()
をしようとしたが、それいるmessage="test"
http呼び出しでスコープバインディングが更新されない
オブジェクトにバインドされていることがわかります最初の反復$digest
が現在進行中であると言います。
app.controller('AssessmentController', ['$scope', '$http', '$timeout', 'ConnectionService', function ($scope, $http, $timeout, connectionService) {
$scope.refreshDomainStatus = {
message: "test"
};
var updateRefresh = function(updateKey) {
$http.get('/assessment/api/update-refresh-domain/' + updateKey).success(function(response) {
$scope.refreshDomainStatus = response.refreshDomainStatus;
if (!response.refreshDomainStatus.halted) {
$timeout(function() { updateRefresh(updateKey); }, 250);
}
});
}
あなた 'はconsole.log(response.refreshDomainStatus)場合;'あなた 'updateRefresh()'メソッドの内部で、出力は何ですか?また、明白な質問ですが、ループ全体を開始するために 'updateRefresh()'をどこかに呼び出すのでしょうか? – Lex
はい、私はそれを呼び出してプロセス全体をオフにします。最初の反復: 'response.refreshDomainStatus =>オブジェクト{エラー:偽、メッセージ:"ユーザのリストの取得 "、停止:偽}'。 '$ scope.refreshDomainStatus =>オブジェクト{エラー:真、メッセージ:"テスト "、停止:false}'。 2回目の繰り返しでは、$ scope.refreshDomainStatusが設定されています。それが正しいように思える。 '' test "と書かれている要素のスコープを調べると、次のようになります: – Bluebaron