2017-04-07 5 views
2

Ich habe eine Ansicht, die eine Liste der Benutzer zeigt, und ich möchte eine Seite Benutzerdetails öffnen, wenn der Benutzer auf den Link klickt.AngularJS - Ich möchte eine neue Seite mit Benutzerdetails öffnen

Es lädt die "Users.html" Seite, wenn ich auf den href klicke, ändert sich die URL im Browser, aber es lädt nicht die Vorlage für Benutzerdetails, auch die Konsole hat keine Fehler.

Hier ist meine ng-Wiederholungscode:

<div class="lista-dicas" ng-repeat="user in users | orderBy:'-ID'"> 
     <div class="col-md-12 box-noticia"> 
      <h3 class="titulo"><a ui-sref="app.users.id({id: user.ID})">{{ user.ID }}</a></h3> 
      <p class="subtitulo">{{ user.Name }}</p> 
      <p class="tags">{{ user.Tags }}</p> 
      <hr> 
     </div> 
    </div> 

Mein Router configs

angular.module('myapp_dicas').config(routeConfig); 

function routeConfig($stateProvider, $urlRouterProvider) { 
$stateProvider 
    .state('app.users', { 
    url: '/users', 
    templateUrl: '/www/app/users/users.html', 
    controller: 'UsersController' 
    }) 
    .state('app.users.id', { 
    url: '/:id', 
    templateUrl: 'www/app/users/user-detail.html', 
    controller: 'UserDetailController' 
    }); 

Antwort

0

Try

url: '/:id', 

Um

url: '/users/details/:id', 
zu ändern

OK, weil es nicht funktioniert hat, hast du app state? Wenn nicht, versuchen Sie, die Zustandsnamen beispielsweise in users und details zu ändern (genau so, keine Punkte). Denn jetzt sieht es aus wie id Zustand ist Kind von users und es kann ein Problem verursachen. Und URL für Details: url: '/users/details/:id', weil es natürlich aussieht.

+0

Es hat nicht funktioniert. Die URL wurde in "users/users/detail/id" geändert und die Vorlage wird nicht geladen. –

+0

@GustavoPoletto Siehe aktualisierte Antwort –

Verwandte Themen