2015-01-23 3 views
0

У меня есть страница, как показано в этом примере plnkr.AngularJS- Перейдите на страницу с выбранным товаром

http://plnkr.co/edit/NKVVn4ga6lYOBWEblt0o?p=preview

При нажатии на гиперссылку (добавлена ​​на нижней части страницы) с HREF = «#/тест», я хочу, чтобы открыть эту страницу, но с одним из пунктов в списке выбран.

(Причина, пытаясь добиться этого, я буду иметь URL с этим маршрутом в другом приложении, и при нажатии на ссылку, я хочу эту страницу открытой с выбранным элементом.)

Это то, что мои routeProvider код выглядит

myItemsApp.config(['$routeProvider', function($routeProvider){ 
    $routeProvider. 
    when('/test',{ 
     templateUrl:'index.html', 
    }). 
    otherwise({ 
     redirectTo:'/', 
    }) 
}]); 

Могу ли я сделать что-нибудь здесь, чтобы установить третий элемент (к примеру) в списке выбран?

Что я сделал до сих пор, я попытался сделать решение в routeProvider и некоторую логику в контроллере, чтобы установить третий элемент в списке, который будет выбран, и потерпел неудачу.

Любая помощь будет принята с благодарностью.

+0

Что вы делаете (разрешить с помощью контроллера) - это правильный путь. –

+0

Хорошо, что хорошо знать. Я могу продолжить изучение этого вопроса – aliaz

+0

. Если вы хотите, чтобы список был автоматически заполнен третьим элементом при нажатии кнопки и загрузке index.html, попробуйте следующее: 'prom.then (function (data) { $ scope.itemDetails = data; console.log (данные); $ scope.select ($ scope.itemDetails [2]); }); ' –

ответ

0

Это на самом деле очень просто, если у вас уже есть маршрут, просто используйте $ routeParams , чтобы получить дескриптор выбранного идентификатора элемента, а затем используйте этот идентификатор, чтобы пройти по вашему списку и установить правильный элемент как активный, как для вашего route, я не помню ngRoute, потому что я не использовал его через некоторое время, но вы можете просто создать другой маршрут, тот же контроллер, тот же шаблон, просто сделайте url похожим/test /: item_id

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