Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angularjs/22.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript Angularjs-将服务代码移动到另一个文件_Javascript_Angularjs_Angularjs Service - Fatal编程技术网

Javascript Angularjs-将服务代码移动到另一个文件

Javascript Angularjs-将服务代码移动到另一个文件,javascript,angularjs,angularjs-service,Javascript,Angularjs,Angularjs Service,我有这样的代码 <script> var MyApp = angular.module("MyApp", ['mc.resizer','chart.js']) MyApp.controller('Ctrl1', function ($scope, $http,MyService) { MyService.EnvDetails().then(function success(data){ $scope.httpdata = data;

我有这样的代码

<script> 
var MyApp = angular.module("MyApp", ['mc.resizer','chart.js'])
MyApp.controller('Ctrl1', function ($scope, $http,MyService) {
        MyService.EnvDetails().then(function success(data){
            $scope.httpdata = data;
            }, function error(err){
                console.log("error found"); return err; 
            });
});
</script> 
将此代码保存在“MyService.js”中,并将此文件引用为

<script type="text/javascript" src="javascripts/MyService.js"></script>

这给了我错误

angular.js:11607错误:[$injector:unpr]未知提供程序:
getEnvDetailsServiceProvider保存到另一个文件时,无需再次添加模块化声明

删除依赖项

//remove this line var MyApp = angular.module("MyApp", []);
MyApp.service('MyService', function($http) {
    this.EnvDetails = function() {
         return $http({
                    url: '/myurl'                    
        }).then(
            function successCallback(response) {
                //Some Code
                return //Some;
            }, function errorCallback(response) {                
                return response;
            }
        );
    };  
});
此行创建新模块。您应该只调用一次。 在其他文件中,只需使用:

var MyApp = angular.module("MyApp");

获取当前已有的模块。

按建议执行,但仍然获取错误。angular.js:11607错误:[$injector:unpr]未知提供程序:MyServiceProvider您在html中包含引用了吗?我错过了,但启用它后,现在我收到两个错误。1.未捕获引用错误:MyApp未在MyService.js中定义:1。和2.angular.js:11607错误:[$injector:unpr]未知提供者:MyServiceProvider您可以发布您引用的订单吗
var MyApp = angular.module("MyApp", []);
var MyApp = angular.module("MyApp");