2016-08-06 3 views
1

단일 페이지 응용 프로그램에서 각도 라우팅에 ngRoute를 사용했습니다. 그러나 각도 라우팅에 대한 몇 가지 문제에 직면하고 있습니다.일부 경로에서는 ngRoute를 사용한 각도 라우팅이 작동하지 않습니다.

구성 : 내 라우팅 경로 인 경우

app.config(function($routeProvider,$locationProvider){ 
    $locationProvider.html5Mode(true); 
    $locationProvider.hashPrefix('!'); 
    $routeProvider 
     .when('/product',{ 
      templateUrl : 'views/product/template/product.html', 
      controller : 'productCtrl' 
     }) 
     .when('/product/add',{ 
      templateUrl : 'views/product/template/add-product.html', 
      controller : 'productCtrl' 
     }) 
}); 

/제품은 모두 괜찮습니다. 하지만 내 라우팅 경로가/product/add이면 오류가있는 것 같습니다. 그러나 "/ product/add" 이 "/ add"로 바뀌면 해당 경로도 정상입니다. 그래서 라우팅 "/ product/add"의 주된 문제는 무엇인지 알지 못합니다.

오류 :

여기
http://localhost:3000/product/views/product/template/add-product.html 404 (Not Found) 

나는 문제를 보았다. 다른 경로는 다음과 같이 보입니다.

하지만 서버 경로 뒤에/product가있는 오류 경로가 있습니다.

이 문제의 해결책은 &입니다. 사전에

감사

답변

1

구성 오류 페이지를 제대로 경로. 이 바이올린 예제를 따를 수 있습니다.

HTML에 대한

<div ng-controller="MainCtrl"> 
    <ul> 
    <li><a href="/product">product</a></li> 
    <li><a href="/product/add">add</a></li> 
    <li><a href="/other">Other</a></li> 
    </ul> 
    <ng-view></ng-view> 
</div> 

각도

var app = angular.module("myApp", []); 

app.config(function ($routeProvider,$locationProvider) { 
     $locationProvider.html5Mode(true); 
    $locationProvider.hashPrefix('!'); 
    $routeProvider 
    .when('/product', { template: 'I am product root' }) 
    .when('/product/add', { template: 'Adding a product' }) 
    .when('/other', { template: 'Other pages' }) 
    .otherwise({ redirectTo: '/product' }); 
}); 

app.controller('MainCtrl', function ($scope) { 
}); 

https://jsfiddle.net/zahiruldu/jLdce3vj/186/

제대로 그건 당신이 중첩 된 경로 시설을 발전 줄 것이다 라우팅 부모를 처리하기위한 UI 라우터를 사용할 수 있습니다.