2014-10-16 3 views
0

$state.go('dashboard')을 사용할 수 없습니다. 오류가 발생합니다 :

Failed to instantiate module app.controllers.login due to: 
Error: [$injector:nomod] http://errors.angularjs.org/1.2.19/$injector/nomod?p0=app... 

경로를 정의하면 오류가 발생합니다. 내가 뭘 잘못하고 있니?

나는 또한 $stateProvider을 시도하고 동일한 오류가 발생합니다.

답변

1

당신은 경로를 정의하지 :

내 컨트롤러 ...

var app = angular.module('dashboardApp', [ 
    "ngRoute", 
    "ngAnimate", 
    "ngTouch", 
    "mobile-angular-ui", 
    "ui.router", 
    "app.factories.storage", 
    "app.controllers.main", 
    "app.controllers.login", 
    "angular-loading-bar" 



]); 

app.config(function ($stateProvider, $urlRouterProvider) { 

    // For any unmatched url, send to /route1 
    $urlRouterProvider.otherwise("/"); 

    $stateProvider 
     .state('login', { 
      url: "/", 
      templateUrl: STATIC_URL + "html/company/login.html", 
      controller: "loginController" 


     }) 
     .state('dashboard', { 
      url: "/dashboard", 
      templateUrl: STATIC_URL + "html/company/dashboard.html" 


     }) 


}); 

컨트롤러

App.js입니다.

angular.module('app.controllers.login', ["app.factories.http","ui.router"]) 
    .config(function($stateProvider, $urlRouterProvider) { 
     $stateProvider 
       .state('dashboard', { 
        url: "/dashboard", 
        views: { 
         "view": { 
          templateUrl: "views/something.html" 
         } 
        } 
       }); 

이렇게하면됩니다. 당신은 내가 가정 로그인 페이지로 재 경로 같은 것을 원하는 경우

은 또한는 config에 다음을 추가 할 수 있습니다

$urlRouterProvider.otherwise("login"); 

이 다른 사용자가 이동하려고 시도하면됩니다 무엇을 존재하지 않는 경로는 다시 로그인하도록 안내합니다.

참고 :

당신이 $q 또는 $timeout를 사용하는 경우, 대신 $location.path('/dashboard');를 사용해보십시오. 특정 행동에

상세 정보 : https://github.com/angular-ui/ui-router/issues/916

+0

이 내 컨트롤러 인은 나의 app.js과 app.js 포함 이미 정의하는 이유 – Prometheus

+0

난에 [ 'ui.router를'] 요청할 수 ui.router 그럼 당신의 컨트롤러? app.js를 내가 제공 한 코드로 사용하고 있습니까? – Billy

+0

이름으로 페이지 이름으로 리디렉션하려고합니다. 경로는 정의되지 않았습니다. – Prometheus

관련 문제