Угловая маршрутизация с проблемой карусели начальной загрузки

В настоящее время у меня есть проблема, которую я не знаю, как решить или можно ли ее решить. В настоящее время я использую Angular JS и Bootstrap 3.0. В моем проекте Angular я использую маршрутизацию, но на моей странице есть 3 кнопки навигации, которые загружают другую директиву в зависимости от нажатой кнопки навигации (обратите внимание, что это не использует маршрутизацию, она скрывает/отображает директиву в соответствии с тем, что было выбран). В каждой из этих трех директив у меня есть загрузочная карусель. Моя проблема заключается в том, что когда я нажимаю для навигации по изображениям карусели, он добавляет имя моей карусели к URL-адресу, и маршрутизация срабатывает. В моей маршрутизации у меня есть другой маршрут, как показано ниже:

  .otherwise({
         templateUrl: home.html'
   })

поэтому, когда URL-адрес изменится на что-либо, кроме указанного, по умолчанию будет отображаться домашний вид. Следовательно, когда пользователь нажимает на карусель и имя карусели добавляется к URL-адресу, по умолчанию используется домашний вид. Мне нужен какой-то способ предотвратить запуск маршрутизации, если URL-адрес связан с этой каруселью, есть ли способ сделать это или, возможно, другой способ обойти эту проблему?

Надеюсь, я объяснил себя достаточно ясно. Если нет, дайте мне знать, и я постараюсь объяснить лучше.

Спасибо за любую помощь, которую я могу получить.


comment
Довольно сложно помочь вам, не видя кода. Я понимаю вашу проблему из того, что вы описываете, но мне нужен рабочий образец, чтобы помочь. Может быть, вы можете создать плункер, который показывает нам ошибку? plnkr.co   -  person Kristian Barrett    schedule 01.08.2014


Ответы (1)


Если я правильно понимаю, проблема заключается в том, что карусель изменяет URL-адрес, и это вызывает изменение маршрута для вас.

Решение этой проблемы состоит в том, чтобы НЕ использовать карусель начальной загрузки как есть, а вместо этого использовать библиотеку angular, которая обертывает начальную загрузку, чтобы предоставить вам угловую совместимую директиву для функций начальной загрузки.

http://angular-ui.github.io/bootstrap/

Эта директива-оболочка не использует изменения привязки и URL-адреса для обеспечения функциональности. Я настоятельно рекомендую использовать эту библиотеку.

person Abhinav Gujjar    schedule 01.08.2014
comment
Это отлично, только что попробовал, и это работает. Спасибо :) ценю это. - person J145; 06.08.2014