我有以下定义的路由
this.route('league', {path: '/league'}, function () {
this.route('matches', {path: '/'});
this.route('create-team', {path: '/:matchId'}, function () {
this.route('team',{path: '/team'});
});
});
我正在尝试在team
路由器中加载与matchId相关的所有玩家,如下所示
import Route from '@ember/routing/route';
export default Route.extend({
model: function(params) {
return this.store.query('player', {'match': params.matchId});
}
});
问题在于参数为空。我试图将硬值传递给json查询,它可以与get请求一起使用,但它不能像这样工作。我在哪里错了?
答案 0 :(得分:2)
在子路由中,您可以调用paramsFor并获取命名路由的参数(包括查询参数)。
就您而言,我相信您会打电话给
let params = this.paramsFor('league.create-team')
let match = params.matchId;