当前位置:首页 > 日记 > 正文

角加载中的一些凹坑

角加载中的一些凹坑
在前面写

最近我们在工作中接触了角模块包的一些内容,感觉中间有一个凹坑,在这里做记号。

项目背景:

该项目主要采用AngularJS作为前端框架,该项目将在年底前发布的脚本都打包成一个文件,加载页时,第一次,由初始页面加载引起的缓慢,在此基础上,提出了按需加载,即只有当用户访问一个模块,该模块的脚本将加载。

工具类:

该项目采用咕噜包根据AMD的规范,使用咕噜requirejs压缩合并模块,并使用oclazyload完成角模块的延迟加载。

项目过程:

模块化包装

项目中的代码基本上是写在与AMD的规范一致,用咕噜requirejs压缩每个模块到一个js文件。

问题一:在项目中的代码,每个模块将依靠第三方库 /项目/公共服务项目的公共教育,如果没有这部分的处理,requirejs咕噜中各模块的压缩,所有模块都装在背上,然后压缩成一个js文件。

答:第三方图书馆/公共服务和指令被压缩为三个模块,然后每个模块打包在脚本中,通过使用排除将其删除。
需要注意的是,公共模块的模块名需要在相应路径下具有相同名称的js文件。

负载需求

在脚本被模块化为js文件之后,下一步是根据用户请求加载不同的模块。该项目使用UI路由器处理路由和跳转,并可以从路由开始延迟加载模块。

具体的方法是:在用户路由操作中跳转,根据用户跳转到状态,加载状态模块。基于此,你需要添加状态和requirejs模块之间的映射,用于负荷开始,发现脚本可以装入,但注册角控制器/服务/过滤不。调查发现,在控制器中注册的角,然后调用服务的引导方法将不再被调用。在此基础上,对oclazyload介绍(角源代码加载一些注射的变化oclazyload)。

到目前为止,基本实现是按需进行的,但有以下问题:

模块之间的项目依赖关系

因为项目之间的模块数量有很强的依赖关系,这种处理方法是在配置文件中添加模块之间的依赖关系,然后加载模块,看看是否有依赖模块(如果有的话)依赖于加载优先级模块,在加载当前模块之前依赖模块加载完成。

指令延迟加载;

通过元编译实现指令间的相互依赖可以是角度,这个过程依赖于配置指令和指令模块,当用于命令时,首先加载模块,然后执行编译器的方法。这个解可以解决大多数的顺序依赖。

指令的位置问题。项目中大多使用的是长页面,每个页面分为几个区域,每个区域都是一个命令。使用截取时,有一个问题,即每个指令加载时间与后面的长度不一样,首先会优先添加DOM指令,从而导致页面布局的不确定性。解决方法是使用不同的机制来加载/所有指令编译完成后,添加DOM树。

指令之间的依赖性:指令之间存在项目依赖关系,这个解决方案是将每个指令依赖于一个模块,打包成相同的脚本文件。该方案可以解决大部分的指令依赖,但不能解决依赖初始化过程。可能有一个指令编译器。从属指令尚未完成编译。对于这个超级特例,只有在页面加载脚本和模板时。初始化

以上就是在整个项目过程中遇到的问题,基本上每一次前进都是一步一步地前进,很多人都是第一次接触,感觉到或者学到了一些东西。许多问题的可能解决办法不是很清楚。以上所有的人都遇到过问题,只要使用搜索引擎,再加上自己良好的阅读理解别人的代码。所有问题都能令人满意地解决。

关于这个角懒加载一些坑是萧边和大家分享的内容,希望能给大家一个参考,我希望你能支持更多。

相关文章

PS图象处理软件教程:漂亮的MM皮肤美

PS图象处理软件教程:漂亮的MM皮肤美

图象处理,软件教程,漂亮,电脑软件,PS,PS图象处理软件,是处理照片的一个重要应用,除了平面设计。本文将介绍如何使用PS图象处理软件美白皮肤的漂亮MM。 首先,看看原始和结果之间的比较。 原 效果图1 效果图2 1、PS开源的地图,第一步是要找到…

PS图象处理软件的设计和精致的温暖

PS图象处理软件的设计和精致的温暖

辐射,光束,图象,处理软件,精致,这种辐射光束用这种滤光片拍得很快。首先要逐渐地拉坡度,用波滤波器作预梁。然后利用滤波器来增加光束的细节,然后用极坐标滤波器将光束转为辐射光束,然后在后期增加电平。 最终效果 1、打开PS软件,新的Ctrl + N…

合并单元格的质量填充颜色

合并单元格的质量填充颜色

填充,合并单元格,颜色,质量,电脑软件,由于工作需要,肖钦合并了工作表的某些部分。现在,它希望用一种特定的颜色填充这些合并的单元格,以便它更引人注目。 如果采用纯手工操作的方法,虽然可行,但相当繁琐。事实上,我们可以采取一种更简单的方法。…

Excel很容易比较两种工作形式之间

Excel很容易比较两种工作形式之间

两种,很容易,差异,形式,工作,首先,打开两个表,然后单击窗口菜单在侧命令,然后一边;两个工作表在同一个窗口中,在上部的一个窗口,另一个在窗口的底部,当然,也可以改为侧立面,这样第一个工作表滚动时,滚动,二工作表和同步,这种差异可以很容易地比较两个文…

Excel20032007快速隐藏当前行和列

Excel20032007快速隐藏当前行和列

快速,电脑软件,编辑Excel工作表,隐藏的行或列,通常都是使用一个命令或拖行数,列边界。事实上,如果你想隐藏当前插入点,只需按下Ctrl + 9,组合键;按下Ctrl + 0 ;组合键,你可以当前列的隐藏。…

引导下拉下拉菜单更改为悬停(悬停)触

引导下拉下拉菜单更改为悬停(悬停)触

悬停,下拉菜单,触发器,电脑软件,在后台使用时使用引导响应导航条,下拉组件使用较多,多需要点击默认下拉框,单击鼠标左键开始,如果用来挂鼠标(悬停)启动将节省时间,这样可以提高点击效率。 转换的最初思想是将悬停事件绑定到下拉元素。当悬停出现时…

PS图象处理软件画一个美丽多彩的光

PS图象处理软件画一个美丽多彩的光

效应,光环,图象,处理软件,画一,一般过程如下:首先,使用PS图象处理软件的选择工具,使环部分(其他形状也可以),然后复制完成图形适当,并恰当地处理它们,然后添加颜色渐变做出类似的效果。最后,布置一些亮点和其他细节。 最终效果 1。一个新的800×800…

如何添加一个超链接的WPSWPSPPT演

如何添加一个超链接的WPSWPSPPT演

教程,超链接,演示,电脑软件,WPSWPSPPT,你知道如何向WPS幻灯片添加超链接吗下面的小编辑器将告诉你如何将超链接添加到WPS PPT中! 在WPS ppt中添加超链接的方法: 1。打开PPT,选择需要添加超链接、邮箱或文本的URL(此时添加文本链接作为示例)。 …

WPS2009演示设置连续播放背景音乐

WPS2009演示设置连续播放背景音乐

设置,背景音乐,演示,连续播放,电脑软件,在WPS2009演示编辑文件的使用,以创造一个良好的氛围,需要插入一个连续播放背景音乐的呈现,如何做第一个幻灯片都做的很好,然后单击插入RARR;对具有语音视频和声音;选项,选择插入声音文件的对话框,然后在对话…

在Javascript的scrollTop深入分析

在Javascript的scrollTop深入分析

电脑软件,Javascript,scrollTop,意义:滚动条的高度 作用:滚动加载(ajax)、滚动导航固定定位、滚动炸弹盒定位等。 显示滚动导航和侧边栏滚动固定定位的效果。 1、Chrome浏览器 两document.body.scrolltop和document.documentelement.scrolltop…

WPS文本如何在WPS文本截图中的WPS

WPS文本如何在WPS文本截图中的WPS

文本,教程,截图,电脑软件,WPS,有时我们需要电脑屏幕截图。当然,有很多软件截图。如果我们想使用WPS文本来筛选,我们该怎么做让我们告诉你如何筛选WPS文本。 WPS文本截图: 打开我们正在使用的WPS文本文件 查找上面打开的文件;插入;然后单击 点…

曝光不足和背光的照片与PS图象处理

曝光不足和背光的照片与PS图象处理

照片,图象,处理软件,电脑软件,PS,我相信很多爱好摄影的朋友遇到因为穷人照明,LED整体偏暗的照片出现曝光下或逆光拍摄的照片,在对比的情况下暗不清楚的细节,也就是我们常说的背光照片;然后,曝光不足和逆光照片有什么补救的方法吗在这里,我们介绍…