IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

AngularJS Discussion :

Routing angular js


Sujet :

AngularJS

  1. #1
    Membre du Club
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juin 2009
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Enseignement

    Informations forums :
    Inscription : Juin 2009
    Messages : 5
    Par défaut Routing angular js
    Bonjour à tous, je suis nouveau sur Angular JS et je ne comprend pas pourquoi mes routes ne fonctionnent pas correctement.
    Voici mon code html
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    <a href="#/">items</a><br>
        <a href="#/cat">categories</a>
    <div ng-view></div>
    Voici mon fichier routing.js
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
     
    'use strict';
     
    app.config(
        function ($routeProvider) {
            $routeProvider
                .when('/', {
                    controller: 'itemList',
                    templateUrl: 'views/item/list.html'
                })
                .when('/cat', {
                    controller: 'categoryList',
                    templateUrl: 'views/category/categories.html'
                })
     
        }
    );
    Ce que je ne comprend pas c'est que le premier fonctionne très bien, mais dès que j'essaye de remplacer '/' par autrechose cela ne fonctionne plus ???
    Quelqu'un pourrait-il m'aider ?

    Amicalement,
    Christophe

  2. #2
    Membre extrêmement actif
    Profil pro
    Développeur
    Inscrit en
    Mars 2012
    Messages
    1 970
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Mars 2012
    Messages : 1 970
    Par défaut
    '/' c'est le root du site.
    Je remarque que tes URL <a href='#'...> pointent vers le root
    Donc forcement, tu devrais changer ces liens.

    Rem2: passe à Angular2

  3. #3
    Membre du Club
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juin 2009
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Enseignement

    Informations forums :
    Inscription : Juin 2009
    Messages : 5
    Par défaut
    Peux tu détailler un peu ? en quoi mes url ne sont elle pas bonnes ?

  4. #4
    Membre du Club
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juin 2009
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Enseignement

    Informations forums :
    Inscription : Juin 2009
    Messages : 5
    Par défaut
    J'ai trouvé la solution. Si ça arrive à quelqu'un je partage : En fait je suis sur Mac et le navigateur ajoutais un "!" dans mes url juste après le # (je sais pas trop pourquoi encore) du coup mes routes ne fonctionnaient pas.
    J'ai modifié mon fichier routing.js en ajoutant cette solution que j'ai eu du mal à trouver sur le web :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
     
    'use strict';
     
    app.config(
        function ($routeProvider, $locationProvider) {
            $locationProvider.hashPrefix('');
            $routeProvider
                .when('/items', {
                    controller: 'itemList',
                    templateUrl: 'views/item/list.html'
                })
                .when('/cat', {
                    controller: 'categoryList',
                    templateUrl: 'views/category/categories.html'
                })
                .when('/create', {
                    controller: 'itemCreate',
                    templateUrl: 'views/item/create.html'
                })
     
        }
    );
    et mes liens dans le html

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    <a href="#/items">items</a><br>
    	<a href="#/cat">categories</a><br>
    	<a href="#/create">créer un item</a>
    	<div ng-view></div>
    Et maintenant tout fonctionne. Par contre si quelqu'un peut m'expliquer je veux bien. J'ai bien compris que
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
     $locationProvider.hashPrefix('');
    supprimait le "!" après le "#" dans mes url mais ce que je ne comprend toujours pas c'est pourquoi mon navigateur (chrome ou firefox) ajoutaient ce fichu "!" dans mes url.

  5. #5
    Membre extrêmement actif
    Profil pro
    Développeur
    Inscrit en
    Mars 2012
    Messages
    1 970
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Mars 2012
    Messages : 1 970
    Par défaut
    Ce lien ne devait probablement pas fonctionner car il dirige vers le root du site:
    <a href="#/">items</a><br>

  6. #6
    Membre du Club
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juin 2009
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Enseignement

    Informations forums :
    Inscription : Juin 2009
    Messages : 5
    Par défaut
    Regarde le post juste au dessus, je l'ai modifié.
    Merci pour ton aide.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [2.x] routing entre symfony 2 et angular js
    Par tunisiano44 dans le forum Symfony
    Réponses: 1
    Dernier message: 23/01/2017, 12h00
  2. Créer des routes avec angular.js
    Par laurentSc dans le forum AngularJS
    Réponses: 1
    Dernier message: 16/01/2015, 15h55
  3. Rajouter un Field à un TTable en cours de route
    Par gandf dans le forum C++Builder
    Réponses: 4
    Dernier message: 08/02/2005, 23h54
  4. Encore une jointure sous Oracle pour la route
    Par ebaynaud dans le forum Langage SQL
    Réponses: 15
    Dernier message: 04/11/2004, 11h40

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo