2012-10-23 12 views
5

Mam widok zawierający link zakotwiczenia. Ten link ma URL do innego adresu URL w mojej witrynie. Angular próbuje załadować tę witrynę, używając trybu html5. Wolę zachowanie domyślne dla tego linku i odesłać użytkownika do adresu URL. Jak mogę określić, że ten konkretny link powinien zachowywać się jak normalny link html, a nie kanciasty?Pod warunkiem, że masz linki zakotwiczone, wyślij użytkownika do innej strony, zamiast ładuj do ng-view

+0

Czy możesz zamieścić więcej informacji? Adres URL wysyłany przez Angular w porównaniu z żądanym adresem URL? –

+0

Jeśli potrzebujesz linku do innej strony, prawdopodobnie nie powinieneś używać linku do zakotwiczenia. Czy czegoś brakuje? – qualidafial

Odpowiedz

16

AngularJS rozumie kilka reguł, które spowodują pełne przeładowanie przeglądarki. Reguły są udokumentowane w sekcji "Przepisywanie html link" w $location service documentation.

Z dokumentacji:

w takich przypadkach Poniżej linki nie są przepisywane; zamiast tego przeglądarka wykona przeładowanie całej strony do oryginalnego łącza.

  • Linki, które zawierają element docelowy przykład: powiązanie <a href="/ext/link?a=b" target="_self">link</a>
  • absolutnych go do innej domeny Przykład: <a href="http://angularjs.org/">link</a>
  • linki zaczynające „/”, które prowadzą do różnych ścieżki dna gdy zasada jest zdefiniowana Przykład: <a href="/not-my-base/link">link</a>

Zauważ, że ostatni przykład działa tylko jeśli użyłeś element base w roku sekcja reklamy Twojej strony:

<base href="/my-base/" /> 
Powiązane problemy