2016-05-06 10 views
0

私は最初の角度のアプリケーションを開始し、依存関係の問題のために私の "ホーム"モジュールが動作していない問題に遭遇しています。私は、必要なものがなくなっても依存性が見えない。私は$ stateProviderと$ urlProviderを使用していますが、ホームモジュールの設定にそれを注入していますので、どこに問題があるのか​​分かりません。モジュールインジェクタの角の角度エラー

Config.$inject = ["$stateProvider", "$urlRouterProvider"]; 
angular.module('home', []).config(Config) 

function Config($stateProvider, $urlRouterProvider){ 
    $stateProvider 
    .state('home', { 
     url: '/login', 
     templateUrl: './views/login.html' 
    }) 
} 

angular.module('home').controller('loginCtrl', function($scope){ 
    $scope.helloWorld = function(){ 
     console.log("This works!") 
    } 
}) 

慰めエラー:これはあなたに提供してい

[$injector:modulerr] http://errors.angularjs.org/1.5.5/$injector/modulerr?p0=home&p1=Error%3A%20… 

答えて

3

「$ stateProvider」と「$ urlRouterProvider」プロバイダはコアAngularJSモジュールの一部ではないので、あなたはモジュールを挿入する必要があり、ホームモジュール定義。私の知る限りでは、$ stateProviderは、UIルータモジュールからなので、

angular.module('home', ['ui.router']). 
... 

はまた、あなたのHTMLファイルにこのJavascriptを含める必要があることに注意してください。それは私が私のモジュールにui.router注入し、スクリプトを含め、angular-ui-routerファイルに

<script src="js/angular-ui-router.min.js"></script> 
+1

素晴らしいです、そして今それが動作します。 AngularJSモジュールの一部でないかぎり、Angularサービスとプロバイダはどこからでも使えるグローバルなコードではなく、モジュールはこれらのサービスやプロバイダを持つモジュールに依存しなければなりません。 – JBT

+0

あなたはそれが正しいです! :) – k10der