2016-07-10 1 views
0

에 대한 특정 AngularJS와 경로를 제한 파일을 app.js :나는 두 개의 경로 내 NodeJS 백엔드 서버에 추가가 주어진 NodeJS 경로

function routes($routeProvider){ 
    $routeProvider 
     .when('/list', 
     { 
      templateUrl: 'sections/list/list.tpl.html', 
      controller: 'listController', 
      controllerAs: 'listCtrl' 
     }) 
     .when('/overview', 
     { 
      templateUrl: 'sections/overview/overview.tpl.html', 
      controller: 'overviewController', 
      controllerAs: 'overviewCtrl' 
     }) 
... 

그냥 예를 들면 : 나는 AngularJS와와 만 "/리스트"경로에 액세스 할 수 있도록 NodeJS에서 "/ 제공"경로를 통제하려는 NodeJS에서 "/"경로에 액세스 할 수 있도록 AngularJS의 "/ overview"경로에만 있습니다.

현재 코드에서는 NodeJS에 정의 된 "/ provision"또는 "/"경로를 사용하여 브라우저에서 모든 AngularJS 경로에 액세스 할 수 있습니다. "/ provision"을 위해 특정 angularJS 라우트에만 액세스하고 나머지는 "/"라우트로 액세스하려고합니다. 어떻게 제어 할 수 있습니까?

답변

1

각도 라우팅을 사용하는 경우 API 호출을 제외하고 노드의 * 경로 이외의 경로를 사용할 필요는 없을 것입니다. 그러나 stateChangeStart 라이프 사이클 메소드를 사용하여 사용자가 각도 경로에 허용되어야하는지 여부를 결정할 수 있습니다. 이 작업을 수행하는 방법에 대한 설명은 여기를 참조하십시오. UI- Router -- run function on every route change -- where does the state name live?

따라서 노드와 각도를 모두 사용하여 라우팅을 처리하지 마십시오. ui 라우터가 모든 라우팅을 처리 할 수있게 해주는 * 라우트가 있습니다. stateChangeStart를 사용하여 사용자가 가고자하는 곳으로 갈 수 있는지 여부를 결정할 수 있으며 그렇지 않은 경우에는 방향을 바꿀 수 있습니다.