我正在开发的应用程序正在加载与应用程序相关的1200个dojo文件,因为此页面需要1分钟才能加载,现在我想减少其加载时间。
我在开始点不需要的所有1200个文件,但在点击按钮时需要它们。任何人都可以建议我在单击按钮时加载dojo文件,而不是在开始时一次加载每个文件。
先谢谢你寻求帮助。
答案 0 :(得分:1)
如果您要加载1200个文件,您应该查看Dojo Build System,这样可以减少加载的文件数量。
无论如何,如果要在单击按钮时加载文件,那么您是否在事件处理程序中移动加载模块(require()
)的代码?例如:
require(["dojo/dom", "dojo/on", "dojo/domReady!"], function(dom, on) {
on(dom.byId("myId"), "click", function() {
require(["module1", "module2"], function(module1, module2) {
// Do stuff
});
});
});
Dojo只会加载模块一次并在每次请求时返回相同的实例,因此没有其他网络请求以这种方式执行。
但是无论如何,如果您正在加载1200个文件,那么您遇到了问题,而不是看着如何懒洋洋地加载这些1200个文件,您应该尝试找出它为什么要加载1200个文件并最终删除一些依赖项