缓存的js文件是否会降低页面呈现速度

时间:2015-03-25 09:39:11

标签: jquery asp.net-mvc kendo-ui

我正在为我的项目使用kendo库。我必须在剑道网格中加载250行,但渲染速度非常慢。加载页面后变得无法响应。当我检查萤火虫时,我发现kendo.all.min.js文件大小为(2.37 MB),由浏览器缓存。它会影响渲染

2 个答案:

答案 0 :(得分:2)

要进一步分析问题的来源,您是否在所有浏览器中都看到了这一点?

您是否看过Glimpse http://getglimpse.com/它非常适合在服务器和客户端的ASP.net上调试性能问题,这可以告诉您延迟的来源。

我无法评论Kendo的效率,我还没有使用它,但2.37MB缩小对于javascript文件非常大(例如Jquery是90kb)。如何解析文件以及它如何影响渲染在浏览器之间可能有所不同 - 但是在javascript样式表中没有真正要渲染250行 - 我使用http://datatables.net/来渲染客户端的1000行没有显着的性能损失。

答案 1 :(得分:2)

这与缓存的kendo.all.min.js无关,只与您的数据集有关。想想看,kendo不得不操纵DOM行250行,随着数据集的增长,它会变得更糟。您可以通过将行数减少到例如20来自行测试,并且您将看到浏览器更快地渲染它。

通常,如果您将Kendo与ASP.NET一起使用,则视图中的Kendo助手实际上会在页面上呈现脚本。当该页面完全加载时,kendo.all.min.js文件将把它转换为网格。当然,如果您在服务器端执行此操作,请忽略此操作。

最后,虽然这与此问题无关,但除非您使用此文件中的每个组件,否则请勿使用kendo.all.min.js。你只需要kendo.grid.js和它的依赖关系。在Web术语中,2.37mb对于.js文件来说是巨大的。访问您网站的每个人都必须下载一个大小的文件,这会极大地影响他们的加载时间。