我们正在开发一个移动门户,使用Worklight 5.0.6和移动Web环境。
加载应用程序时,所有资源(如js,css,图像等)都一起加载。因此,加载页面需要太多时间。我们如何限制资源(不需要)与应用程序一起加载。我们如何强制仅加载所需的资源?
听起来你要问的是:
- 如何减小应用程序的大小
- 如何减少应用程序产生的网络流量
实际上,在Worklight 6.0.0.0中,有:缩小和串联功能以及应用程序缓存(自动生成)。由于您在 5.0.6 中没有它,因此您可以做的是:
-
无论任何功能如何,都只保留您实际使用的内容。
- 删除不使用的图像和库
- 使用 png-crush 最小化图像的文件大小
- 删除死代码
-
对于网络流量:
-
将清单文件添加到应用程序,并在其中列出要缓存的所有资源,而不是始终获取。应用程序缓存是一种 Web 标准,因此您只需关注 Web 上的文章即可。
-
您可以"手动"缩小应用程序资源;您可以使用Google Closure完成此操作。
-
小心!如果选择此路径,请确保仅使用 WHITESPACE_ONLY 或 SIMPLE_OPTIMIZATION 编译级别。不要在 Worklight 框架文件上使用 ADVANCED_OPTIMIZATIONS - 行为将是未知的(它可能有效,也可能无效,它可能会在某些部分突然失败 - Worklight 不支持此功能)。
-
-
至于只加载你想要的东西,ala RequireJS,Worklight还没有能力来处理这个问题,所以这对你来说不是一个可行的选择。
IMO 在 5.0.6 中对此没有太多可做的; 6.0.0.0 向前迈出了一步,即将推出的 6.1.0 也更好地处理了它(移动 Web 环境在结构和文件数量方面要轻得多),但您还不能对资源进行模块化加载。