gpt4 book ai didi

angularjs - 每次我展示它们时如何强制 Angular2 重新创建组件

转载 作者:太空狗 更新时间:2023-10-29 18:33:15 24 4
gpt4 key购买 nike

在我们的 angular2 Typescript 应用程序中,我们使用路由器。我们的组件非常通用,它们的行为会根据从路由器获得的参数发生显着变化。

该应用程序处于早期开发阶段,我所指的行为是最近观察到的。我不确定这是因为代码更改还是其中一个库的重大更改。

考虑一个名为 List 的组件。它从上下文(路由、包装组件等)获取一些信息,例如它应该显示的实体类型。

现在,当我更改路由时,List 组件不会重新实例化,但它的参数会更新。由于我在 ngOnInit 中使用这些参数来设置组件,因此以后的更改将无效。

我知道我可以使用更改检测来解决这个问题,但我宁愿不这样做。原因是这将使开发人员更容易引入更难发现的回归错误(例如:转到人员列表,然后做某事,转到订单列表,有些东西不应该存在) ,测试和重现。它们更有可能泄漏到生产中。

如何在路由更改时强制 Angular 重新创建 List 组件。

更多观察:在路由器中,如果我导航到不显示 List 组件的路由,然后返回到 List,则该组件被重新实例化。

最佳答案

订阅活跃的路由参数;这是一个可观察的

关于angularjs - 每次我展示它们时如何强制 Angular2 重新创建组件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40047671/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com