首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >URL修改:角

URL修改:角
EN

Stack Overflow用户
提问于 2018-04-07 17:50:45
回答 2查看 54关注 0票数 0

我有一个函数,我用来循环一些图片,这改变了我的URL。我使用角路由获取我的第一个URL,“域”参数是一个由domain.id和domain.category <a [routerLink] = "['/image', image.id, domain]">组成的数组。

当我选择第一个图像时,我得到了我的URL的正确结构。http://localhost:4200/image/1;id=1;category=testing.

然而,当我调用我的“下一步”函数循环通过图像时,我得到了这个URL。"http://localhost:4200/image/2?id=1&category=testing.

基本上,我想问的是,是否有可能替换"?“和"&“并将它们转化为";”

代码语言:javascript
复制
next() {
  const next = this.activeId + 1 >= 9 ? 1 : this.activeId + 1;
  const extras: NavigationExtras = {
    queryParams: {
      id: this.domain.id,
      category: this.domain.catergory
    }
  };
  this.router.navigate(['/image/' + next], extras);
}

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2018-04-07 18:31:40

使用字符串插值,尝试如下

使用navigateByUrl

代码语言:javascript
复制
next() {
    const next = this.activeId + 1 >= 9  ? 1 : this.activeId + 1;
   this.router.navigateByUrl('/image/' + `${next};id=${this.domain.id};category=${this.domain.catergory}`);
}
票数 0
EN

Stack Overflow用户

发布于 2018-04-07 18:29:12

如果您喜欢使用queryParams (我建议使用),您可以更改使用routerLink构建的第一个示例。例如,如果您:

Change

代码语言:javascript
复制
<a [routerLink] = "['/image', image.id, domain]">

代码语言:javascript
复制
<a [routerLink] = "['/image']" [queryParams]="{imageId: image.id, domain: domain.id, category:domain.category}">

然后你的第一个网址将包含"http://localhost:4200/image/1?id=1

在整个应用程序中,这种行为将更加一致。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/49710256

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档