每次进行http请求的时候自动执打印日志和显示隐藏loading
来源:5-3 常见操作符(二)

ok_Wei
2019-06-18
请问老师有没有好的方法把打印前端日志和显示隐藏loading封装一下,使每次进行http请求的时候自动执行该操作?
写回答
1回答
-
这些都需要使用 rxjs,建立一个service,里面封装一个 subject,每次请求前发送 subject.next(true),然后在 rxjs 的pipe 中使用 finalize 这个操作符,去 next(false) 。这样你订阅这个 subject 进行你想要的操作即可,这个操作可以封装成一个 service 在根模块中注入订阅,订阅时自己做想做的处理即可。
或者在 interceptor 中 intercept 时进行 next(true) 然后在 处理 response 的observable 中,pipe finalize 这个操作符,去 next(false)
或者利用 ngrx ,但其实也是这个思路,只不过是改变 state 的值而已
后面有时间,我给做个例子,这段时间比较忙
012019-12-08
Angular打造企业级协作平台,让你在Angular领域中出类拔萃
全网首个介绍官方 Material 组件库用法与 Redux 在 Angular 中的应用
998 学习 · 536 问题
相似问题