12
votes

Angularjs convertissant mon URL NG-HREF "SLASH" en "% 2F"

J'ai une application angularjs qui est une galerie. Pour chaque image, associé à celui-ci est un ng-href avec # / {{fichiers.id}} .


5 commentaires

Avez-vous essayé sans le # ?


Dans mon cas, je devais retirer $ emplacementProvider.html5mode (vrai);


@LarissAnite Supprimer le HTML5Plus (True) écrira vos URL avec un # ou # / - Utilisez simplement / au lieu de # / Correction de mon problème.


Dupliqué possible de Comment générer des liens d'ancrage codés par l'URL avec angularjs? < / a>


Dupliqué possible de URL Hash-Bang (#! /) Préfixe au lieu de simples hachage (# /)


3 Réponses :


2
votes

YO besoin de ne pas coder quoi que ce soit ici. Il suffit d'ajouter * dans votre chemin paramètre comme mentionné ci-dessous et activez HTML5Mode

  app.config(function ($routeProvider) {
     $routeProvider
    .when('/home', {templateUrl: 'home.html', controller: 'HomeCtrl'})
    .when('/base/:path*', {templateUrl: 'path.html', controller: 'pathCtrl'})
    .otherwise({redirectTo: '/home'});
 });

 $locationProvider.html5Mode({
      enabled: true,
      requireBase: false
    });


0 commentaires

13
votes

en raison de AA077E8 , le préfixe de hachage par défaut utilisé pour $ localisation hachage -Bang URL a changé de la chaîne vide ('') au BANG ('!').

Vous devriez essayer ceci.

index.html xxx

app.js xxx


1 commentaires

Merci! Cela fonctionne bien. L'OP aurait dû accepter cette réponse.



6
votes

Il y a deux solutions:

non recommandé: ajoutez! Dans vos ancrages:

Le hachage par défaut a été changé de "" à "!" en angulaire et comme il ne changera probablement pas que vous pourriez simplement prendre l'habitude d'ajouter "#!" dans vos balises d'ancrage au lieu de "#".

recommandé: Utilisez $ EmplacementProvider:

utiliser

$ emplacement.hashprefix ("")

Dans votre module config pour utiliser la chaîne vide en tant que hachage Bang, tout comme les temps anciens !!


1 commentaires

Ajout ! # est obsolète maintenant n'est-ce pas? Je n'utilise que standard HTML / My-URL Mode HTML5 activé )