我的任务是使用angularjs作为前端框架的多页网站。目前,我使用browserify和npm来管理模块依赖关系,它为整个应用程序生成一个捆绑文件。但是,每个页面仅使用该捆绑文件的一部分(1个控制器文件和一些指令/服务文件)。是否可以延迟加载文件而不是一个大的捆绑文件?
我已经阅读过webpack延迟加载,但我不知道它是否符合我的要求(即自动检测和加载文件,启用npm包等)。
答案 0 :(得分:0)
是。您可以在函数内使用require.ensure而不是简单的require。在这种情况下,模块将导出到其他文件中,并仅在需要时加载。这是一个例子:
function (callback) {
require.ensure(['module'], function (require) {
callback(require('module'));
});
}
所以'模块'仅在第一次调用此函数时加载。