Angular-延迟从CMS加载整个页面

嗯嗯

我正在尝试构建一个由CaaS / CMS驱动的,名为Prismic.io的角度应用程序。

该项目的第一阶段将是简单的内容库(由CMS管理),第二阶段将添加更复杂的Web应用程序组件。知道这一点后,我决定将Angular作为我的最佳选择,但我一直在努力寻找一个好的解决方案,以便从Prismic API延迟加载所有内容。

我决定探索的一种解决方案是拥有一个标准化的$ scope变量,我们称它为$scope.loaded每个控制器将执行其必须查询我的Prismic服务以获取其各自内容的所有操作,完成后将对其进行设置$scope.loaded = true

我坚持使用此方法的部分是如何在加载所有这些组件时准确显示页面。最简单的方法是包括ng-if引用此loaded值的指令,但是我觉得会有大量的未样式化内容闪烁。是的,我可以使用微调器,但是将90%的页面覆盖在微调器中的想法似乎很疯狂。

然后我想知道:如果我拉起应用程序的加载屏幕,直到所有控制器的$scope.loaded值都变为真该怎么办?在那种情况下,我如何知道页面上当前正在使用哪些控制器并引用它们各自的作用域?

(如果您对这种方法不好的原因有意见,我希望听到他们的回答而不是回答。例如,我想这可能会创建过多的http请求)。

杰夫·斯托里

这里有几个选择:

您是否看过ngCloak是否可以帮助您解决闪烁问题?https://docs.angularjs.org/api/ng/directive/ngCloak

如果您使用的是jquery,则可以使用一个全局微调器来处理并发ajax请求http://api.jquery.com/category/ajax/global-ajax-event-handlers/

或看看像这样的全局角度微调器https://github.com/monterail/angular-global-spinner/tree/master/src

如果这些都不起作用,您总是可以在根范围内创建一个数组,其中每个控制器/指令都将自己注册并设置其加载标志。然后向该变量添加一个监视,以查看该数组中的所有组件何时完成加载。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

在页面滚动上延迟加载Angular视图和控制器

来自分类Dev

PJAX延迟页面加载

来自分类Dev

Angular Prerendering延迟html页面加载,以便预渲染以加载Ajax

来自分类Dev

如何在Angular JS中加载页面?

来自分类Dev

Angular JS-重新加载整个页面

来自分类Dev

使用Angular在页面加载延迟后调用函数

来自分类Dev

Angular 2和Webpack延迟加载

来自分类Dev

ngif导致页面重新加载-Angular 2

来自分类Dev

延迟加载不加载模块-Angular 8

来自分类Dev

如何使用延迟加载仅加载angular 8中的模块

来自分类Dev

JavaScript页面加载延迟

来自分类Dev

Angular-页面加载动画

来自分类Dev

Angular-延迟加载条件路由

来自分类Dev

Angular 6:将紧急加载转换为延迟加载

来自分类Dev

Angular ngGrid选择页面加载行

来自分类Dev

Angular Prerendering延迟html页面加载,以便预渲染以加载Ajax

来自分类Dev

在Angular JS中设置页面加载的值

来自分类Dev

如何在Angular JS中加载页面?

来自分类Dev

Angular JS页面加载触发无限页面加载循环

来自分类Dev

Angular JS-重新加载整个页面

来自分类Dev

Angular 2和Webpack延迟加载

来自分类Dev

Angular2延迟加载路线问题

来自分类Dev

延迟加载 Angular 2 组件缓存问题

来自分类Dev

Angular,在延迟加载的模块中暴露组件

来自分类Dev

Angular 1 组件延迟加载请求错误

来自分类Dev

带有依赖模块的 Angular 延迟加载

来自分类Dev

Angular:Redux 和延迟加载

来自分类Dev

Angular 中的延迟加载样式

来自分类Dev

Angular:如何延迟加载谷歌分析脚本?