2017-07-07 5 views
0

maninSvc.jsなしでアプリケーションが正常に実行されました。

angular.min.js:123 Error: [$controller:ctrlreg] http://errors.angularjs.org/1.6.5/$controller/ctrlreg?p0=MainController 
at angular.min.js:7 

マイコード:

Index.htmlと

<!DOCTYPE html> 
<html ng-app="app"> 

<head> 
    <title></title> 
    <script src="Scripts/jquery-3.2.1.min.js"></script> 
    <script src="Scripts/bootstrap-3.3.7/js/bootstrap.min.js"></script> 
    <script src="Scripts/angular.min.js"></script> 
    <script src="Scripts/angular-route.min.js"></script> 
    <script src="Scripts/angular-resource.min.js"></script> 

    <link href="Scripts/bootstrap-3.3.7/css/bootstrap.min.css" rel="stylesheet" /> 
    <link href="Css/Shared.css" rel="stylesheet" /> 

    <script src="MainController.js"></script> 
    <script src="mainSvc.js"></script> 
</head> 

<body ng-controller="MainController as vm"> 

    <div data-ng-if="vm.success" class="success">{{vm.success}}</div> 
    <div data-ng-if="vm.catch" class="catch">{{vm.catch}}</div> 
    <div data-ng-if="vm.finally" class="finally">{{vm.finally}}</div> 

</body> 

</html> 

MainController.js

(function() { 
    angular 
    .module('app', ['ngRoute']) 
    .controller('MainController', mainController); 
    mainController.$inject = ['mainSvc']; 

    function mainController(mainSvc) { 
    var vm = this; 
    mainSvc.getData() 
     .then(function(data) { 
     vm.success = "success"; 
    }).catch(function(response) { 
     vm.catch = "catch"; 
    }).finally(function() { 
     vm.finally = "finally"; 
    }); 
    } 
})(); 

mainSvc.js

このファイルを追加した後、私はerrrorを見ています
(function() { 
    angular 
    .module('app', []) 
    .factory('mainSvc', mainSvc); 
    mainSvc.$inject = ['$resource']; 

    function mainSvc($resource) { 
    var ResourceData = $resource({ 
     query: { 
     isArray: true 
     }, 
     get: {}, 
     save: { 
     method: 'POST' 
     }, 
     update: { 
     method: 'PATCH' 
     }, 
     put: { 
     method: 'PUT' 
     }, 
     remove: { 
     method: 'DELETE' 
     } 
    }); 
    return { 
     getData: getData, 
    }; 

    function getData() { 
     /// <summary> 
     /// Gets Data 
     /// </summary> 
     return ResourceData 
     .get() 
     .$promise; 
    } 
    } 
})(); 

答えて

1

mainSvc.jsは、モジュールに空の依存関係を持たないようにしてください。新しいモジュールとみなされます。

(function() { 
    angular 
    .module('app') 
    .factory('mainSvc', mainSvc); 
+0

私は削除しましたが、私は同じエラーが表示されます。 – user3194721

+0

キャッシュをクリアしてアプリを実行しましたか?エラーを投稿する – Sajeetharan

+0

はい、angular.min.js:123エラー:[$ injector:unpr] http://errors.angularjs.org/1.6.5/$injector/unpr?p0=%24resourceProvider%20%3C-% 20%24resource%20%3C-%20mainSvc – user3194721

関連する問題