2016-07-29 10 views
0

でサードパーティのライブラリを使用します。これは、私の工場で:今角度工場

.factory('DataService',['$http',function($http, Backand){ 
    var data = []; 
    return { 
     GetData: function(){ 
      return $http.get(Backand.getApiUrl() + '/1/objects/details').then(function(response){ 
       data = response; 
       return response; 
      }); 
     }, 
     GetElem: function(personId){ 
      for(i=0;i<data.length;i++){ 
       if(data[i].id == personId){ 
        return data[i]; 
       } 
      } 
     } 
    } 

}]); 

問題。サードパーティのライブラリBackandは正しく注入されていますが、エラーが表示されます。Cannot read property 'getApiUrl' of undefined

ですから、Backandは未定義です。コントローラでBackandを使用すると、すべて正常に動作します。

これを修正するにはどうすればよいですか?これに

.factory('DataService',['$http',function($http, Backand){ 

:これはあなたのために動作します

.factory('DataService',['$http', 'Backand',function($http, Backand){ 

希望

変更これを注入しながら

答えて

2

あなたはBackandが欠落しています。

-1
.factory('DataService',['$http, 'Backand',function($http, Backand){ 
    // correctly injected Backand 
}]); 
+0

いいえ、引用符が間違っているため、正しくはありません。 – dfsq

+0

このコードがOPに役立つ理由の説明を追加してください。これにより、今後の視聴者からの回答が得られます。詳細については、[回答]を参照してください。 –

関連する問題