有时候我的路线带有几个参数,例如:
/checklists/:type/:view/:filter
我想通过以下方式在模板中创建链接:
<a routerLink="['/checklists',':type',':view',':filter']">Link</a>
例如,:type
应该自动更改为路由的type参数的当前值,并为娱乐:view
添加唯一值。
当前,我必须这样做以获得相同的结果:
public path2url(path,params,custom_params={}){
let path_pieces = path.split('/');
let url_pieces = [];
for( let pk in path_pieces){
let piece = path_pieces[pk];
if(piece.match(/^\:/)){
let param_name = piece.replace(':','');
piece = custom_params[param_name] || (params[param_name] || piece);
}
url_pieces.push(piece);
}
let url = url_pieces.join('/');
//console.log('path2url',path,params,custom_params,url);
return url;
}
<a routerLink="path2url(route_.path,route_.params,{'view':'map'})">Link</a>
答案 0 :(得分:0)
您可以按以下方式使用 queryParams
。
<a routerLink="['/checklists']" [queryParams]="{ type: 'typeVariable', view: 'viewVariable', filter: 'filterVariable'}">Link</a>