2016-04-15 2 views
1

У меня проблема с # знаком угловой маршрутизации. У меня есть навигационные ссылки, которые Шоуд быть не доводя знак косой черты, как это:Hash sign in Angular Routing

<li class="active"><a href="/"><i class="fa fa-home" aria-hidden="true"></i></a></li> 
<li><a href="#services"> УСЛУГИ</a></li> 

В противном случае scrollspy не работает (если я использую <a href="#/services">).
Но теперь вот проблема с угловыми маршрутизации, который сконфигурирован таким образом:

config(["$routeProvider", function ($routeProvider) { 
     $routeProvider 
      .when('/', { 
       templateUrl: '/templates/home.html', 
       controller: 'smu72Controller' 
      }) 
      .when('/objects', { 
       templateUrl: '/templates/objects.html', 
       controller: 'smu72Controller' 
      }) 
      .when('/object/:Id', { 
       templateUrl: '/templates/object.html', 
       controller: 'smu72Controller' 
      }) 
     .otherwise({ 
      redirectTo: "/" 
     }); 

Как я должен изменить конфигурацию маршрутизации (или scrollspy), чтобы иметь возможность с помощью этих ссылок навигации для обеих целей - scrollspy и угловой маршрутизации?

ответ

1

вы можете избавиться от # знака на маршруте с помощью $locationProvider модуля

config(["$routeProvider", "$locationProvider", function ($routeProvider, $locationProvider) { 
    $routeProvider 
     .when('/', { 
      templateUrl: '/templates/home.html', 
      controller: 'smu72Controller' 
     }) 
     .when('/objects', { 
      templateUrl: '/templates/objects.html', 
      controller: 'smu72Controller' 
     }) 
     .when('/object/:Id', { 
      templateUrl: '/templates/object.html', 
      controller: 'smu72Controller' 
     }) 
     .otherwise({ 
      redirectTo: "/" 
     }); 

     // use the HTML5 History API 
     $locationProvider.html5Mode(true); 
}]); 
+0

Хорошо, да, это работает. Но вы знаете, что, когда я нахожусь на этом маршруте/объекте /: Id ', навигация просто не работает, пользователь не может вернуться на домашнюю страницу. Как это можно исправить? –

+0

Ваш 'id' является параметром справа? например '/ object/3' – manish

+0

Да, это так. –