Angular 在角域中具有routerLink链接的动态queryParams

Angular 在角域中具有routerLink链接的动态queryParams,angular,angular-router,routerlink,queryparam,Angular,Angular Router,Routerlink,Queryparam,我试图在循环中向routerLink传递一个参数。以下是对象数组的外观: 以下是routerLink链接的循环: <li *ngFor="let Achievement of AllAchievements"> example from multiple sources does not work with a variable 'x'. Outputs the letter x <a routerLink="page" [queryParams]=

我试图在循环中向routerLink传递一个参数。以下是对象数组的外观:

以下是routerLink链接的循环:

<li *ngFor="let Achievement of AllAchievements">

    example from multiple sources
    does not work with a variable 'x'. Outputs the letter x
    <a routerLink="page" [queryParams]="{x : 1}">anchor text</a> 

    example from multiple sources
    link is outputted /%5B'page',%20%7BAchievement.type%20:%20'hello'%7D%20%5D'
    <a routerLink="['page', {Achievement.type : 'hello'} ]">anchor text</a>

    outputs long/encoded string as param value 
    <a [routerLink]="['page']" queryParams="{ [Achievement.type] : 'hello' }">anchor text</a>
</li>

来自多个来源的示例
不适用于变量“x”。输出字母x

我不确定是否理解您的要求。。。您希望该行为与您提供的代码有何不同?@KevinAud,我深表歉意。我已经用desired output=一个带有查询参数的传统链接更新了这个问题。您似乎无法将
[queryParams]
的键设置为动态值,但该值本身可以是动态的。你可能需要重新考虑你的方法。哇,我认为你是对的@R.理查兹。在网上找不到任何东西。文档说
queryParams:{[k:string]:any}
找不到任何关于它的信息,因此无法动态运行。我试图让它工作,但最终得到了运行时错误。也许你可以创建一个
有效载荷
键,然后用一个好的分隔符从json中传递一些值。。。您希望该行为与您提供的代码有何不同?@KevinAud,我深表歉意。我已经用desired output=一个带有查询参数的传统链接更新了这个问题。您似乎无法将
[queryParams]
的键设置为动态值,但该值本身可以是动态的。你可能需要重新考虑你的方法。哇,我认为你是对的@R.理查兹。在网上找不到任何东西。文档说
queryParams:{[k:string]:any}
找不到任何关于它的信息,因此无法动态运行。我试图让它工作,但最终得到了运行时错误。也许您可以创建一个
有效负载
键,并在值中传递json中的一些值,也许可以使用一个好的分隔符。