2017-07-27 8 views
0

データベースのデータが変更されたときにangularJsを使用してビューのデータを自動的に更新できますか?どうすればいいですか? このスクリプトを作成しましたが、viewData()がトリガーされている場合にのみデータをリフレッシュできます。データベース内のデータが変更されたときにangularjsを使用してビューのデータを自動的に更新する

$scope.viewData = function(){ 
    $http.get("sample.php").then(function(response){ 
     $scope.mine = response.data; 
    }); 
} 

ページを更新せずに新しいツイートを読み込むことができるtwitterのタイムラインのようなページを作成したいと思います。

setInterval($scope.vievData, 1000); 

setIntervalので、角度によって監視されていないあなたはすぐに$scope.mine=...$scope.viewData

$scope.$$phase || $scope.$digest(); 

に次の行を追加する必要があります:あなたは角度側からこのようlongpolling行うことができます

+0

私はあなただけがこれを行うことができるとは思わない。 Webソケットを使用して$ destroyで閉じる必要があるかもしれません。 – alphapilgrim

+0

PHPでlongpollingすることもできます –

答えて

0

をありがとう

これは、DBの変更に関係なく、毎秒$scope.mineを更新します、それは少し原油です。これを行うには、データベース内の値が変更された場合にのみ、おそらくWebSocketを使用する必要がありますが、それは前と後の両方で少し複雑です。

関連する問題