Angular.js: Opção para desativar a captura de <a href="...">links</a>

Criado em 29 nov. 2013  ·  5Comentários  ·  Fonte: angular/angular.js

O Angular deve ter a opção de ignorar links <a href="..."> e permitir que o navegador os trate nativamente.

Eu tenho HTML que eu exibo que obtenho de uma API. Nele eu tenho <a href="..."> links que quero me comportar nativamente, causando recarregamentos de página inteira. E então eu uso ng-href para as coisas que quero passar em $router , etc.

Comentários muito úteis

A menos que eu esteja interpretando mal sua pergunta, você pode adicionar target="_self" ao link e o angular não tentará encaminhá-lo.

Todos 5 comentários

a questão é que o ngRoute não funciona (e não pode) realmente funcionar assim. não é "capturar links", ele está essencialmente observando window.location --- então como você o forçaria a desabilitar a função updateRoute temporariamente? Pode ser factível, mas não tenho certeza de como funcionaria

A menos que eu esteja interpretando mal sua pergunta, você pode adicionar target="_self" ao link e o angular não tentará encaminhá-lo.

Sim, target = "_ self" pode ser usado para isso, veja aqui:

http://docs.angularjs.org/guide/dev_guide.services. $ localização

Sim, eu sei sobre target="_self" , mas este HTML está vindo de uma API.

Acho que poderia analisá-lo e adicionar target="_self" sozinho como uma solução alternativa.

Não acho que haja outra maneira pragmática de contornar isso. @pixelcort, você pode transformar seu html por meio de interceptores de resposta .

Esta página foi útil?
0 / 5 - 0 avaliações