у меня есть маршрут в уголек определяется как например:Scoping emberjs параметры запроса к контроллеру
this.route('products', { path: '/t' }, function() {
this.route('index', { path: '/:taxon' });
});
Так что я могу посетить следующие ссылки:
- /т/рубашки
- /т/обувь
- /т/и т.д ...
еа ch из них может также иметь ряд параметров запроса. Например, я мог бы сделать заявку на красные рубашки, подобные этому /t/shirts?colour=red
. Это здорово, но я хочу сохранить параметры запроса в экземпляре контроллера вместо модели. Поэтому, если бы я искал красные рубашки, а затем перешел к изучению обуви (через {{# link-to}}), тогда параметры запроса будут доступны на этом маршруте, например, /t/shoes?colour=red
. В настоящее время я, похоже, не в состоянии это сделать.
Я нашел ссылку на что-то в документации на ember, в которой указано, что я могу установить область видимости в «контроллер» showMagnifyingGlass
, и это будет делать то, что я намереваюсь, но он, похоже, не работает. У меня есть неправильный конец палки с showMagnifyingGlass
? Я считаю, что в этом суть областей запроса для экземпляра контроллера, а не для модели, поэтому, если бы я нажал на ссылку, которая изменяет модель маршрутов, она не влияет на параметры запроса.
Это то, что я включил в мой контроллер:
queryParams: [{
showMagnifyingGlass: {
scope: 'controller' // Scope the parameters to the controller so transitions share state.
}
}]
Не уверен, что это то, что я ищу. Названия элементов (например, рубашки, брюки, обувь) являются динамическими сегментами и поэтому переходят на «{{# link-to 'products' 'shirts' (query-params color = color)}}'. Будет ли это решение работать в этом случае? – tomasbasham
Я обновил подсказку, чтобы разместить маршруты, которые у вас есть! –
Работает отлично. благодаря – tomasbasham