Angular 从旋转变压器返回角度可观测值的目的

Angular 从旋转变压器返回角度可观测值的目的,angular,angular-resolver,Angular,Angular Resolver,为什么要从角坐标中的分解器返回可观测值?这与简单地订阅组件本身的服务/存储中的方法有何不同?我认为解析器的目的是确保在加载组件之前数据已存在。来自的文档中关于: 决定 类可以实现为数据提供程序的接口。数据提供程序类可与路由器一起用于在导航期间解析数据接口定义了一个方法,该方法将在导航启动时调用。路由器将等待数据解析,然后再最终激活路由 它不同于简单地订阅组件本身的服务/存储中的方法,因为在这种情况下,加载组件的路由已经被激活,之后将进行API调用。因此,用户可能必须等待数据加载 现在,在大多数情

为什么要从角坐标中的分解器返回可观测值?这与简单地订阅组件本身的服务/存储中的方法有何不同?我认为解析器的目的是确保在加载组件之前数据已存在。

来自的文档中关于:

决定 类可以实现为数据提供程序的接口。数据提供程序类可与路由器一起用于在导航期间解析数据接口定义了一个方法,该方法将在导航启动时调用。路由器将等待数据解析,然后再最终激活路由

它不同于简单地订阅组件本身的服务/存储中的方法,因为在这种情况下,加载组件的路由已经被激活,之后将进行API调用。因此,用户可能必须等待数据加载

现在,在大多数情况下,您首先不需要
Resolve
。这只是API响应速度的问题,以及在获取可能妨碍用户体验的数据时是否存在重大延迟。

来自的文档中关于:

决定 类可以实现为数据提供程序的接口。数据提供程序类可与路由器一起用于在导航期间解析数据接口定义了一个方法,该方法将在导航启动时调用。路由器将等待数据解析,然后再最终激活路由

它不同于简单地订阅组件本身的服务/存储中的方法,因为在这种情况下,加载组件的路由已经被激活,之后将进行API调用。因此,用户可能必须等待数据加载


现在,在大多数情况下,您首先不需要
Resolve
。这只是API响应速度的问题,以及在获取数据时是否存在可能妨碍用户体验的显著延迟。

因此,如果我从解析器返回一个可观察值并在组件中订阅,那么订阅会在组件加载之前发生吗?与订阅服务相反,组件可能会在订阅发生的同时加载?您不会真正订阅
解析器中返回的
可观察的
。您可以通过
ActivatedRoute
snapshot.data
属性访问它在激活组件中包装的数据。是的,如果您从组件内的服务订阅
可观察的
,组件将被加载(或者至少它的
ngOnInit
在考虑到您在
ngOnInit
内进行服务调用时会被调用),并且订阅将并行进行。因此,如果我从解析器返回一个可观测值并在组件中订阅,那么订阅会在组件加载之前发生吗?与订阅服务相反,组件可能会在订阅发生的同时加载?您不会真正订阅
解析器中返回的
可观察的
。您可以通过
ActivatedRoute
snapshot.data
属性访问它在激活组件中包装的数据。是的,如果您从组件内的服务
订阅
可观察的
,组件将被加载(或者至少它的
ngOnInit
将在考虑到您在
ngOnInit
内进行服务调用时被调用),并且订阅将并行进行。