2015-12-25 3 views
0

Я следующий код состояния:AngularJs - Маршрутизация для динамического URL

.config(function ($stateProvider, $urlRouterProvider, CONSTANTS) { 
    $urlRouterProvider.otherwise('/cyo'); 

    $stateProvider.state('pri', { 
     url: '/pri', 
     controller: 'priController', 
     templateUrl: CONSTANTS.PRI_TEMPLATES.PRI_TEMPLATE_URL, 
     redirectTo: 'pri.size' 
    }).state('rec', { 
     url: '/rec', 
     controller: 'recController', 
     controllerAs: 'recCtrl', 
     templateUrl: CONSTANTS.REC_TEMPLATES.REC_TEMPLATE_URL 
    }) 
}); 

URL-адрес генерируется является http://adc.com/REC/1440/#

1440 будучи ID, который изменяется в зависимости от прод в упак. шаблон не загружается с этим URL-адресом. но как только я добавляю '/ rec /' после текущего URL-адреса, загружаемого шаблона - http://adc.com/REC/1440/#/rec/ страница правильно загружается

Я не могу понять, как это исправить.

Ayush

ответ

2

Вы должны определить государственные Счетчики при определении состояния.

Попробуйте это:

.state('rec', { 
    url: '/rec/:id', 
    params: {id: 'defaultValue'}, // optional 
    controller: 'recController', 
    controllerAs: 'recCtrl', 
    templateUrl: CONSTANTS.REC_TEMPLATES.REC_TEMPLATE_URL 
}) 

И HTML-код:

<a ui-sref='rec({id: 123})'>Go to rec</a> 
+0

Благодаря Feyyaz для решения. это сработало бы. My Go to rec находится вне контроллера и не подпадает под угловые приложения. Итак, теперь работает ui-sref dosent. так что теперь понадобится решение из коробки, где я могу интегрировать URL-ссылку и угловое приложение. –

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