1

我正在使用 require.js 开发一个项目,并且仅在需要时才加载模块,如下所示

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

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

4

2 回答 2

2

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

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

于 2013-03-20T12:45:17.263 回答
1

好吧,这取决于您的性能需求。大多数情况下,加载一个 1KB 的文件不会对客户端产生太大影响,因此您也可以加载它。

于 2013-03-20T12:43:06.077 回答