Angular 第二,如何在http请求响应之前停止加载应用程序
我在第二阶段遇到了一个问题 在加载任何其他组件之前,我需要通过Http请求从服务器获取数据,换句话说,在请求响应到来之前,停止应用程序加载/呈现任何组件Angular 第二,如何在http请求响应之前停止加载应用程序,angular,typescript,Angular,Typescript,我在第二阶段遇到了一个问题 在加载任何其他组件之前,我需要通过Http请求从服务器获取数据,换句话说,在请求响应到来之前,停止应用程序加载/呈现任何组件 换句话说,在从数据库获取数据之前如何停止加载应用程序使用解析器首先获取数据,并在接收到数据后初始化组件 例如:UserComponent将在获取用户数据后初始化 { path: 'user', component: UserComponent, resolve: { users: UserDataResolver } 有关更多详细信息,请查看
换句话说,在从数据库获取数据之前如何停止加载应用程序使用解析器首先获取数据,并在接收到数据后初始化组件 例如:UserComponent将在获取用户数据后初始化
{ path: 'user', component: UserComponent, resolve: { users: UserDataResolver }
有关更多详细信息,请查看我的以下答案:
演示:
但是,在加载组件之前获取数据可能会破坏UX。有时您需要它,但大多数情况下,本地加载程序策略更好(在获取数据时显示加载程序)
另请参阅以下相关资源:首先使用解析器获取数据,并在收到数据后初始化组件 例如:UserComponent将在获取用户数据后初始化
{ path: 'user', component: UserComponent, resolve: { users: UserDataResolver }
有关更多详细信息,请查看我的以下答案:
演示:
但是,在加载组件之前获取数据可能会破坏UX。有时您需要它,但大多数情况下,本地加载程序策略更好(在获取数据时显示加载程序)
另请参阅以下相关资源:来自Angular 4.3.0
HttpClientModule
支持拦截器。在获取数据之前,您可以使用它显示加载指示器。这将提供更好的用户体验。
来自Angular 4.3.0
HttpClientModule
支持拦截器。在获取数据之前,您可以使用它显示加载指示器。这将提供更好的用户体验。
听起来像是在http请求完成之前拦截Angular应用程序初始化的方法 如果是这样,我建议查看APP\u初始值设定项 这可以用于以angular方式钩住加载过程,并且您可以触发一个返回承诺的服务。在该承诺得到解决之前,应用程序的其余部分不会加载 关键是要记住,它使用的是承诺,而不是观察。API文档对此并不清楚 更多信息可在此处找到: