Angular forRoot 与 Services

Photo by Jaanus Jagomägi on Unsplash

在Angular中,

常常会看到在 AppModule 中调用某个模块的 forRoot 方法。

其中最常见的应该就是 RouterModule.forRoot()。

但是 forRoot 的作用是什么?什么时候要自己编写 forRoot?

读完本文,

相信你会有一个答案。

继续阅读Angular forRoot 与 Services

理解 Angular Resolver

1.什么是 Reslover

Angular 6+ 中 Router(路由)多了一个 resolve 属性。这个属性指向的一段代码被称为 “ Resolver ”。

Resolver 可以理解为在路由到组件加载之间的一段中间代码。它可在组件被路由之前获取预抓取数据,然后在组件初始化时获取并处理。

路由绑定 Resolver 后,路由执行流程如下:

1.用户点击链接。

2.路由执行 Resolver 获取数据。

3.目标组件初始化并搜集结果。

4.目标组件完成加载。

为了有个初步的概念,你可以先结合这个在线例子熟悉一下。

2.为什么使用 Resolver

相比于直接在组件中注入服务,Resolver 可以将数据抓取与其他业务逻辑分离开来,更加利于项目的维护和扩展。

这种做法也被称为遵循“ single responsibility principle

继续阅读理解 Angular Resolver