【问题标题】:How to set key in queryParams?如何在 queryParams 中设置键?
【发布时间】:2017-11-10 14:12:13
【问题描述】:

如何从服务中添加键值?

menu.keyword

是我从 api 获得但具有价值的变量。我想将该值作为键传递到 url 中的 queryParams 中。有什么建议我该怎么做?

现在在 url 中我得到 menu.keyword = 22 而我不希望我想要 processId=22 因为 menu.keyword 具有价值 processId

我知道在 ts 中我可以添加一些东西:{[menu.keyword]:menu.refParamter3} 我如何在 html 中添加内容?

【问题讨论】:

  • 所以你从一个服务返回menu.keyword,你想将它作为?processId=22(查询字符串)传递给另一个服务?
  • 不,我想将它添加到 queryParms。 menu.keyword 返回字符串 word processId,我希望它是 queryParams 中的一个键。 refParamters 返回 22,所以我想要 queryParams:{menu.keyword:refParamter} 如果我合并这两个,我将在 url 中得到 processId=22。
  • 哦,我明白了。那么{ [menu.keyword]: menu.refParameter3 } 不起作用吗?
  • 它在 html 中不起作用。我明白了:[{ [menu.keyword]: menu.refParameter3 }] 中的第 3 列出现了意外的令牌 [、预期的标识符、关键字或字符串

标签: angular


【解决方案1】:

在获得您的 queryParams 后:

Object.keys(queryParams).forEach(key => { 
// you can delete a query params
// you can change key ...
});

在 ned 中,您可以使用新的 queryParams 导航到路由

this.router.navigate(['myRoute'], {queryParams})

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-03-18
    • 2018-11-12
    • 1970-01-01
    • 1970-01-01
    • 2010-11-17
    • 1970-01-01
    相关资源
    最近更新 更多