使用ngrx/router代替新的angular2路由器有什么好处和坏处。我目前使用弃用的beta路由器,我想评估我的机会。
答案 0 :(得分:7)
以下是与现已弃用的测试版路由器https://gitter.im/ngrx/store?at=5710e4fc5cd40114649b9399
的比较组件路由器和ngrx /路由器之间的主要区别是设计背后的决策。如果您查看生命周期钩子,组件路由器在组件方面采用更内部的方法。我们的路由器不要求路由器挂钩您的组件,因此任何组件都是可路由的。另一个区别是使用了可观察量。组件路由器使用promises来处理它的生命周期,而我们使用的是可观察的,因为它们适合更多的被动方法。我们的路径/查询参数是可观察的,这使得在参数更改时更容易重用组件。我们的路由器有更多的流可供您订阅和响应。总体思路是浏览器URL本身就是一个流,我们正在将该流转换为渲染路径的视图。两种路由器都具有延迟加载,保护路由,解析数据和生命周期事件的概念。两者仍然存在需要填补的空白。如果您更喜欢更加可观察的方法,我们的路由器可以很好地使用它。
新的angular2路由器将更接近今天的ngrx /路由器,因此如果您现在使用已弃用的beta路由器,请继续使用该路由器,直到新路由器发布然后再迁移。如果你从零开始,我会说使用ngrx / router,因为它准备好了新路由器的相对简单的迁移路径。