AngularJS缓存REST请求

cat*_*ure 6 javascript rest caching angularjs

我是angularJS的新手,对缓存等有疑问.

我有一个包含两个步骤的向导,我希望能够单击返回和下一步,并且表单仍然填写为用户拥有它们.

在我的page1Partial我有这个:

<li ng-repeat="pick in picks | orderBy:orderProperty">
<b><span ng-bind="pick.name"/></b>
<input type="checkbox" ng-model="pick.checked" ng-click="updateBasket(pick)">
</li>
Run Code Online (Sandbox Code Playgroud)

当我转到下一页,然后单击后面的复选框被清除,因为我再次调用我的RESful调用java服务.如何缓存此响应?

从我的控制器,每次都会访问我的REST Web服务.

$scope.picks = Pick.query();
Run Code Online (Sandbox Code Playgroud)

我的服务

angular.module('picksService', ['ngResource']).
    factory('Pick', function ($resource) {
        return $resource('rest/picks/:id', {}, {
            'save': {method: 'PUT'}
        });
    });
Run Code Online (Sandbox Code Playgroud)

Nar*_*etz 19

从1.1.2(commit)开始,所有$ httpConfig选项都直接暴露在$ resource操作对象中:

return {
  Things: $resource('url/to/:thing', {}, {
    list : {
      method : 'GET',
      cache : true
    }
  })
 };
Run Code Online (Sandbox Code Playgroud)


Aja*_*wal 10

如果你替换$resource,$http那么你可以直接使用下面的代码

$http({
    method: 'PUT',
    url: 'url',
    cache:true
});
Run Code Online (Sandbox Code Playgroud)