AngularJS выдвигает косую черту / после хеш-тега

Я пытаюсь использовать AngularJS $anchorScroll с $location.hash, Однако, когда я устанавливаю хеш, AngularJS добавляет косую черту, / после него.

Например, URL-адрес: http://localhost:13060/Dashboard, Когда я не включаю библиотеку AngularJS, я могу нажать на ссылку, #contact и перейти к http://localhost:13060/Dashboard#contact,

Но когда я включаю AngularJS и нажимаю на ссылку, он идет в http://localhost:13060/Dashboard#/contact предотвращение работы $anchorScroll.

Редактировать $anchorScroll не работает

Начальный URL http://localhost:13060/Category, Когда я добавляю категорию, она должна идти http://localhost:13060/Category#/#id (где id - это новый идентификатор) и прокрутите страницу вниз до него. URL корректно обновляется, но $anchorScroll не прокручивает.

 //jump to new category
 $location.path("");
 $location.hash(cat.ID);
 $anchorScroll();

1 ответ

Решение

Если вы не используете html5mode, который удаляет хеш из угловой маршрутизации, у вас будет 2 хеша, один для угловой маршрутизации и другой для якорей.

http://localhost:13060/Dashboard#/#contact

Предполагая, что у вас был задан путь маршрута /profiles и якорь был в этом виде, URL будет выглядеть так:

http://localhost:13060/Dashboard#/profiles#contact

Другие вопросы по тегам