当前位置: 首页 > 知识库问答 >
问题:

Angular:没有办法让一个对象通过路由器?

越涛
2023-03-14

我一直试图找到一个简单的解决办法。

我有一个显示项目列表的for循环。单击其中一个项目会将您转到详细组件,我只希望所选项目在详细组件中可用。出于某种原因,没有简单的解决方案(据我所知)。我希望会有这样的事情:

``

这就是我想要的。但是,这当然行不通。

我错过什么了吗?

共有3个答案

裴心水
2023-03-14

请像这样试试

<ul>
    <li *ngFor="let product of products">
        <a [routerLink]="['/product/',product.id]"></a>
    </li>
</ul>
侯令雪
2023-03-14

通过路由传递的对象是有限的选项。使用服务是更好的选择。如果您通过父组件提供服务实例,那么父组件和子组件中会注入相同的实例,并且您可以立即获得共享数据。

https://stack blitz . com/edit/angular-6-communicating-between-components-1 gun kw?file=app/app.component.ts

屠锐
2023-03-14

您不想通过路由器支付对象。而是传递一个id,然后在新页面上重新查找该项。这样,如果你刷新了新页面,一切仍然正常。

 类似资料:
  • 这是一场2D的比赛。 我有一个玩家可以发射触发弹(使用触发碰撞器)和敌人也可以这样做。当玩家的炮弹与敌人相撞时,会发生一些事情,反之亦然。然而,当玩家射弹和敌人射弹发生碰撞时,它们只是忽略碰撞,彼此穿过,什么也没有发生。它们也有一个刚体2D,具有连续碰撞检测。 有没有办法让这两个带有触发器碰撞器的游戏对象发生碰撞? 这是我为敌人射弹脚本准备的: “射击”是玩家射弹的名称,是不与敌人射弹碰撞的游戏对

  • 问题内容: 是否可以通过react-router中的组件传递对象? 就像是: 与我从to 组件传递过来的方式相同。 如果不可能的话,最好的方法是什么: 我有一个React + Flux应用程序,并且用一些数据渲染了表格。我想做的是,当我单击其中一行时,它将带我到该行的一些 详细信息 组件。该行包含了我需要的所有数据,所以我认为如果可以将其传递通过,那将是很好的。 另一种选择是在url中传递行的,在

  • 这是可行的,但它不是特别整齐。如果我能在应用程序尝试匹配路由之前,以某种方式对进入网关的每个请求设置Exchange属性,将会容易得多,也会简单得多。则筛选器可以是一个简单的谓词,用于检查Exchange属性是否相等。 我已经把文档读了好几遍,但似乎什么都不可能。筛选器的作用域总是特定的路由,并且仅在路由匹配后才运行。也许可以让第一个路由是另一个谓词,它执行必要的代码,设置预期的属性,并且总是返回

  • 想实现先请求接口然后再生成路由改如何做到?(下面代码试了几次都不行)

  • 由于没有快速的lambda计算器,我使用上面的策略将非类型化lambda演算的术语编译为Haskell,以便快速计算它们。我对它的性能印象深刻:该程序创建了一个从到的数字列表,并在我的计算机上在不到一秒钟的时间内将它们相加。这比我预期的要快得多--只比Haskell直接等价物慢4倍--并且足以对我的目标有用。但是,请注意,为了满足类型系统的需要,我必须将函数和术语包装在fun/num构造函数下面。

  • 我有一个需求,我想找到运行的jar中的jar的路径。假设有一个名为example-1.0.0.jar的罐子在一个名为main-1.0.0.jar.的运行罐子里,我想知道运行罐子里存在的罐子的路径。 编辑1:例如,jar是项目中的一个依赖项。例如,假设我的项目中有一个log4j依赖项,我想知道log4j jar在类中的路径。我怎样才能找到路?