キャッシュされた $resource を使用して REST API とやり取りしています。
.factory('OpeningHours', function($resource, $cookies){
return $resource(apiBase + '/api/test', {}, {
'get' : { method:'GET', cache: true }
});
});
工場の助けを借りてデータを取得する方法:
OpeningHours.get({}, function(response){
$scope.openingHours = response;
});
$resource を次のように更新します。
$scope.save = function(){
$scope.openingHours.$save();
}
新しいデータはサーバーに正しく送信されますが、$resource オブジェクトは更新されません。ビューを変更して戻ると、古いデータが得られます。アプリケーション全体をリロードした後でのみ、$resource オブジェクトに新しいデータが含まれます (API が呼び出されるため)。キャッシュをオフにすると、すべてが期待どおりに機能します。
AngularJS に $resource オブジェクトのデータを強制的に更新させ、追加のキャッシュを使用させるにはどうすればよいですか?