2016-09-01 4 views
1

Я использую Angular UI Router1.0.0-beta.1. Пытается перейти от состояния, такого как /myroute/new, к /myroute/5. Поскольку состояние с идентификатором 5 очень похоже на состояние new, я бы хотел сбросить важные состояния пользователя.Переход к новому состоянию URL без перезагрузки

Я пробовал довольно хорошо документированные подходы, такие как использование метода transitionTo, например: $state.transitionTo(myRoute, params, {notify: false});, но это все еще обновляет приложение.

Как я могу перейти от первого URL к следующему молча?

ответ

1

Вы можете указать ваше имущество как dynamic, а затем использовать $state.params, чтобы прочитать его в коде.

Где вы определили состояние:

$stateProvider.state({ 
    url: '/myroute/:id', 
    params: { 
     id: { 
      dynamic: true 
      ... 

В контроллере, впрыснуть $state, а затем вы можете прочитать Params в вашей логике. Вы также можете использовать метод uiOnParamsChanged на контроллере для прослушивания измененных параметров. Это в 1.0.0-beta.3. More reading: https://github.com/angular-ui/ui-router/issues/1758

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