Redirigez vers une autre page en utilisant AngularJS

Muhammad Adil 19 septembre 2023
  1. Utiliser le service $location dans AngularJS pour rediriger vers une autre page
  2. Utilisez le service $window pour effectuer une redirection de page complète
  3. Conclusion
Redirigez vers une autre page en utilisant AngularJS

AngularJS est un puissant framework JavaScript qui simplifie le processus de création d’applications web en étendant le vocabulaire HTML de votre application. Dans ce tutoriel, nous aborderons comment utiliser efficacement AngularJS pour rediriger vers une autre page, offrant une expérience utilisateur fluide.

Utiliser le service $location dans AngularJS pour rediriger vers une autre page

Le service $location dans AngularJS est un outil polyvalent qui vous permet de gérer les URL au sein de votre application web. Il sert à récupérer l’URL de la page actuelle et à effectuer les modifications nécessaires, notamment en redirigeant vers de nouvelles pages.

De plus, il facilite la gestion des modifications de la barre d’adresse du navigateur, des clics sur les liens initiés par l’utilisateur, des fenêtres contextuelles et des signets, garantissant une navigation fluide.

L’un des principaux avantages d’utiliser le service $location est sa capacité à faciliter la navigation au sein de votre application sans vous obliger à basculer entre les contrôleurs ou à écrire du code personnalisé pour gérer les modifications d’URL.

Il simplifie le processus de gestion des URL grâce à une variété de méthodes, telles que $location.href(), $location.absUrl(), url(), protocol(), host(), port(), path([path]), replace(), state(), search([paramValue]), et hash(). Ces méthodes vous permettent de rediriger les utilisateurs vers de nouvelles URL ou de modifier l’URL actuelle facilement.

Il existe principalement deux façons d’appliquer le service $location pour la redirection d’URL :

  1. Utiliser $location.url(URL)

    Cette méthode est utilisée pour changer l’URL et naviguer vers une route différente en spécifiant l’URL complète, y compris le protocole et le nom de domaine.

    Syntaxe :

    $location.url('/new-location');
    

    Cela convient pour naviguer vers des routes différentes au sein de votre application AngularJS et peut également être utilisé pour naviguer vers des sites web externes en fournissant une URL complète. Cependant, cela déclenche un rechargement complet de la page si l’URL est d’une origine différente (navigation entre des origines croisées).

  2. Utiliser $location.path(URL)

Cela sert à changer la partie de la route de l'URL (la partie après le nom de domaine) tout en conservant le protocole et le nom de domaine intacts.

Syntaxe :

```javascript
$location.path('/new-location');
```

Cela est idéal pour naviguer entre différentes routes au sein de votre application AngularJS sans déclencher un rechargement complet de la page. Cette méthode n'est pas adaptée pour la navigation vers des sites web externes car elle ne modifie pas le nom de domaine ou le protocole.

Utilisez le service $window pour effectuer une redirection de page complète

Après avoir utilisé le service $location pour la manipulation des URL, vous pouvez utiliser $window pour rafraîchir la page. Pour ce faire avec $window.location.href, suivez ces étapes :

Voici un exemple simplifié pour illustrer comment rediriger vers une autre page ou une autre URL en utilisant AngularJS :

Code HTML :

<div ng-app="Demo" ng-controller="Sample">
  <h3>Example of Redirecting to Another Page using AngularJS</h3>
  <br>
  <br>
  <button ng-click="location()">Click here to experience AngularJS magic</button>
</div>

Code JavaScript :

var app = angular.module('Demo', []);
app.controller('Sample', function($scope, $window, $location) {
  $scope.location = function(){
    var url = "https://www.delftstack.com/";
    $window.location.href = url;
  }
});

Dans le code HTML ci-dessus, la directive ng-click associe une action à l’événement de clic du bouton. Dans ce cas, lorsque le bouton est cliqué, il invoquera la fonction $scope.location définie dans le contrôleur.

Ensuite, dans le code JavaScript, nous utilisons le service $window pour définir la propriété location.href sur l’URL définie. Cette action déclenche une redirection de page complète vers l’URL spécifiée, nous amenant efficacement à https://www.delftstack.com/ lorsque le bouton est cliqué.

Sortie :

rediriger vers une autre page angularjs

Cliquez ici pour exécuter le code d’exemple.

Conclusion

En résumé, le service $location d’AngularJS nous permet de gérer facilement les URL et de mettre en œuvre une redirection fluide au sein des applications web. En combinant ce service avec l’objet $window, nous pouvons rafraîchir efficacement les pages et guider les utilisateurs vers des URL spécifiques en toute simplicité.

Cette approche rationalisée améliore l’expérience utilisateur et simplifie le développement d’applications web dynamiques et conviviales.

Muhammad Adil avatar Muhammad Adil avatar

Muhammad Adil is a seasoned programmer and writer who has experience in various fields. He has been programming for over 5 years and have always loved the thrill of solving complex problems. He has skilled in PHP, Python, C++, Java, JavaScript, Ruby on Rails, AngularJS, ReactJS, HTML5 and CSS3. He enjoys putting his experience and knowledge into words.

Facebook

Article connexe - Angular Service