热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

Angularjs:ocLazyLoadvsRequirejs

如何解决《Angularjs:ocLazyLoadvsRequirejs》经验,为你挑选了2个好方法。

我正在开展一个大型项目,显然我们需要一种延迟加载脚本的方法.

我之前使用过require.js非常好,但问题是在我们连接和缩小文件之后,我们得到了一个1.5M的js文件.

所以我刚刚遇到OcLazyload,它看起来很有前途,但我在网上看到很多使用require和ocLazyLoad的例子,我有点困惑为什么你想要同时使用它们.他们俩都做同样的事吗?



1> Olivier..:

您可以将RequireJS与ocLazyLoad一起使用,但我不推荐它,这是可能的,因为人们要求我这样做,并且很容易集成.您不需要RequireJS,因为ocLazyLoad包含自己的js/css/templates文件加载器,它可以加载任何类型的文件,而不仅仅是角度模块.

如果你想延迟加载Angular模块,你需要一个lib来用Angular注册它们(或者等一下Angular 1.5,你可以这样做).

底线是:你可以将RequireJS与ocLazyLoad一起使用,或者只使用ocLazyLoad(推荐),但你不能只使用RequireJS


谢谢@Oliver,这是一个很好的解释.我也写了一篇关于https://goo.gl/aEUWVt的博客.

2> Adrian Mitev..:

你需要ocLazyLoad和RequireJS,因为你现在处理两个独立的模块概念 - 你的Javascript模块和角度内部模块.

在初始引导之后,angularjs不再允许注册新的模块和组件,如指令和控制器(至少不使用标准方式).

RequireJS仅加载Javascript文件,但它不会在此新代码中注册新的角度模块和组件

ocLazyLoad所做的是允许你使用像RequireJS这样的第三方模块加载器加载你的附加文件,更重要的是 - 它在延迟加载代码中以新的模块和组件的形式注册.

总而言之 - 您可以仅使用RequireJS懒惰加载代码,但不能仅使用RequireJS加载角度模块和组件.需要额外的工作,比如ocLazyLoad执行的工作.


是不是oclazyload自己加载资产?如果你可以使用oclazyload,为什么要使用两者?
推荐阅读
  • 深入理解FastDFS
    FastDFS是一款高效、简洁的分布式文件系统,广泛应用于互联网应用中,用于处理大量用户上传的文件,如图片、视频等。本文探讨了FastDFS的设计理念及其如何通过独特的架构设计提高性能和可靠性。 ... [详细]
  • 本文详细介绍了C++标准模板库(STL)中各容器的功能特性,并深入探讨了不同容器操作函数的异常安全性。 ... [详细]
  • 本文探讨了通过数组操作、事件委托、插件化开发、字符串拼接优化、HTML5 Data属性的使用、优先采用原生JavaScript以及JavaScript文件的压缩等方法,来提升jQuery应用程序的性能。 ... [详细]
  • 本文旨在介绍Three.js的基础概念及其应用场景。Three.js是一个基于WebGL的JavaScript库,用于在网页上创建和显示3D图形。文中将从Canvas的基本功能出发,探讨其局限性,并引出WebGL及Three.js的解决方案。 ... [详细]
  • 本文详细介绍了如何通过 `vue.config.js` 文件配置 Vue CLI 的打包和代理设置,包括开发服务器配置、跨域处理以及生产环境下的代码压缩和资源压缩。 ... [详细]
  • 本文针对公司项目中普遍存在的IE浏览器兼容性问题,特别是IE9及以下版本,提出了具体的解决方案,确保用户在这些旧版浏览器中也能顺利实现图片上传预览功能。 ... [详细]
  • 本文通过一个实际案例,详细介绍了如何使用Excel VBA和FSO(FileSystemObject)对象来提取指定文件夹中的所有文件名称,并将其以超链接的形式添加到Excel表格中。 ... [详细]
  • 本文详细探讨了在Windows Server 2003环境下遇到MySQL连接失败(错误代码10061)的解决方案,包括通过卸载特定的Windows更新和调整系统注册表设置的方法。 ... [详细]
  • 本文介绍如何使用 jQuery 的 AJAX 方法从服务器获取 JSON 数据,并通过遍历这些数据来创建包含公司及其产品信息的数组。 ... [详细]
  • 学习目的:1.了解android线程的使用2.了解主线程与子线程区别3.解析异步处理机制主线程与子线程:所谓主线程,在Windows窗体应用程序中一般指UI线程,这个是程序启动的时 ... [详细]
  • OpenWrt 是一款高度可定制的嵌入式 Linux 发行版,广泛应用于无线路由器等领域,拥有超过百个预装软件包。本文详细探讨如何在 OpenWrt 上通过 Luci 构建自定义模块,以扩展其功能。 ... [详细]
  • 无脚本 JSP 的 Web 页面设计
    探讨了Web页面设计人员是否需要掌握Java技能,以及他们如何快速学习表达式语言(EL)。虽然EL的应用前景尚不明朗,但本文将重点介绍如何通过JSP的include指令有效整合页面元素。 ... [详细]
  • 本文介绍了一个使用Keras框架构建的卷积神经网络(CNN)实例,主要利用了Keras提供的MNIST数据集以及相关的层,如Dense、Dropout、Activation等,构建了一个具有两层卷积和两层全连接层的CNN模型。 ... [详细]
  • 本文介绍了如何在三台CentOS 7.5虚拟机上通过Docker部署RabbitMQ集群,包括环境准备、容器创建、集群配置及故障处理等内容。 ... [详细]
  • 本文介绍了如何在 Linux 系统上构建网络路由器,特别关注于使用 Zebra 软件实现动态路由功能。通过具体的案例,展示了如何配置 RIP 和 OSPF 协议,以及如何利用多路由器查看工具(MRLG)监控网络状态。 ... [详细]
author-avatar
Kevinczp
这个家伙很懒,什么也没留下!
RankList | 热门文章