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");