我是否应该只在需要时加载javascript模块,如果它们非常小的话?

时间:2013-03-20 12:40:55

标签: javascript requirejs frontend amd

我正在使用require.js开发项目,我只在需要时才加载模块,比如

// only load accordion if needed
if ($('.accordion').length) {
    require(['Accordion'], function(Accordion) {
        Accordion.init();
    });
}

现在我想知道这是否有意义,因为accordion.js模块重量不到1kb ......我应该从启动时加载所有模块,只在需要时启动它们吗?

2 个答案:

答案 0 :(得分:2)

存在极端情况,但作为“标准”行为,我们可以说如果您的页面上可能使用了js模块,则应加载它。考虑到使用缓存,缩小和模块分组会降低很多性能影响。

我不会添加额外的逻辑来检测模块是否实际使用。额外的逻辑是另一个潜在的失败点,所以可能它不值得,特别是对于这种情况。

答案 1 :(得分:1)

这取决于您的表现需求。大多数情况下,加载一个1KB的文件对客户端没有太大的影响,所以你还可以加载它。