我有以下代码:titledbApp.controller('TitleListController', ['$cookieStore', function($scope, $http, $cookieStore) {

它行不通-它基本上无法检测到$ CookieStore并说它是undefined,因此所有.get和.put请求均失败。

当我将$cookieStore中的function()移至开始位置(在$scope之前)时,它工作正常,但随后$scope$http无法工作。

完整代码:

titledbApp.controller('TitleListController', ['$cookieStore', function($cookieStore, $scope, $http) {
    $cookieStore.put('ETag', 'test');
    var etag = 't';
    $http.get('https://api.github.com/users/ImReallyShiny/repos', {headers: {'If-None-Match': 't'}}).then(function successCallback(response, headers) {
        $cookieStore.put('ETag', headers('ETag'));
        $scope.titles = response.data;
        $scope.titles.splice(1, 1);
        $scope.titles.sort(function(a, b){
            if(a.name.toUpperCase() < b.name.toUpperCase()) return -1;
            if(a.name.toUpperCase() > b.name.toUpperCase()) return 1;
            return 0;
        });
        }), function errorCallback() {
        return "Error";
        };
}]);

最佳答案

titledbApp.controller('TitleListController', ['$cookieStore', function($cookieStore, $scope, $http)


应该

titledbApp.controller('TitleListController', ['$cookieStore', '$scope', '$http', function($cookieStore, $scope, $http)


您必须先注入它们,然后才能在代码中访问它们。

10-08 15:45