2015-07-28 4 views
0

Я хочу создать страницу событий и страницу подробностей событий в угловом формате. Я создал свои состояния, как это в моем app.jsУгловые страницы с QueryString

.state('app.event', { 
    url: "/event", 
    views: { 
     'menuContent': { 
      templateUrl: "views/event.html", 
      controller: "eventController" 
     } 
    } 
}) 

.state('app.eventDetail', { 
    url: "/eventDetail/:eventId", 
    views: { 
     'menuContent': { 
      templateUrl: "views/eventDetail.html", 
      controller: "eventDetailController" 
     } 
    } 
}) 

Я получаю мои события в моих взглядах/event.html страницы как этого

<div class="list" ng-controller="EventController"> 
<div class="item item-avatar item-left" ng-repeat="EventName in Events track by $index"> 

      <p>{{ EventName }}</p> 
      <p>{{ EventId }}</p> 

     </div> 
    </div> 

Мой вопрос, как я могу переадресовать свою страницу событий на страницу EventDetail с идентификатором события?

И еще мой вопрос: как я могу получить этот идентификатор на странице EventDetail?

ответ

0

Вы можете использовать ui-sref так:

<div class="list" ng-controller="EventController"> 
    <div class="item item-avatar item-left" ng-repeat="EventName in Events track by $index">     
     <a ui-sref="app.eventDetail({eventId: EventId})">{{ EventName }}</a>  
    </div> 
</div> 

Нажав на ссылку на событие должно перенаправить на страницу информации, а затем, чтобы получить параметр из URL вы использовать $stateParams услуги:

app.controller('eventDetailController', function($scope, $stateParams) { 
    $stateParams.eventId; 
}); 

Я подозреваю, что в вашем коде может быть несколько ошибок. Поэтому, если у вас возникли проблемы с вышеуказанным, обновите свой вопрос кодом для обоих контроллеров, и я попытаюсь обновить свой ответ на их учетную запись.

Смежные вопросы