2014-07-22 90 views
0

我創建用下面的代碼服務:爲什麼我的角度服務工作正常

angular.module('myApp' , []). 
service('facebook' , ['$window' , function(){ 
return function(){ 
    alert('hello!') 
} 
}]) 

,並試圖在我的控制器使用此代碼使用它:

angular.module('myApp' , []) 
.controller('mainControl' , ['$scope' , '$http' , '$log', 'facebook' , function($scope,$http,$log,facebook){ 
    $scope.$log = $log; 
    $scope.message = 'hello world!'; 
    $scope.callFacebook = function(){ 
     facebook(); 
    } 
}]) 

但我一直得到這個錯誤:'未知的提供者:facebookProvider < - facebook ...這個錯誤是$注入器無法解析所需的依賴關係造成的。

我覺得我正在跟隨文檔到發球臺。我錯過了什麼?

+0

從服務應用程序的聲明中刪除,[]。您只聲明一次應用程序級別依賴關係 – tymeJV

回答

3

我創建了兩次myApp。

請看這裏:http://jsbin.com/bopumo/2/edit

var app = angular.module('app', []); 
    app.service('facebook' , ['$window' , function($window){ 
    return function(){ 
     alert('hello!') 
    } 
    }]) 

    app.controller('mainControl' , ['$scope' , '$http' , '$log', 'facebook' , function($scope,$http,$log,facebook){ 
     $scope.$log = $log; 
     $scope.message = 'hello world!'; 

     $scope.callFacebook = function(){ 
      facebook(); 
     } 
    }]) 
+0

當它們位於同一個文件中時,它工作正常。感謝您的幫助。但是我想知道如何讓他們在controllers.js和services.js中獨立工作? – user3294779

+0

Nvm讓它工作。謝謝! – user3294779

相關問題