您是否在文档正文中嵌入了JS?或者你只把它们全部放在文件的头/脚上?
我一直将它们放在一个站点范围的文件中,但它变得无法管理。我认为使用视图助手有选择地将脚本包含到文档正文中可以很好地工作,但我错过了什么?
答案 0 :(得分:4)
尝试使用RequireJS等库来管理.js文件。 这将在您的头脑中添加一个脚本引用,但在必要时包含所有其他文件。如果需要,这还将支持构建的捆绑和缩小。
作为旁注;脚本块始终阻止页面加载,因为脚本始终在加载的大小之前执行。因此,最好尽可能使用尽可能少的脚本块,如果你有它们,请将它们放在身体的结束标记之前,以提供最佳的用户体验。
答案 1 :(得分:0)
我们遵循的流程是在不同文件中逻辑地和功能性地对JS文件进行分组。我们只加载网页所需的那些文件。
如果您的文档可能需要或可能不需要JS文件,我们会使用延迟加载文件,即按需加载文件。 Facebook在其Bootloader框架方法中广泛使用这一概念。
这很容易实现。您的主要任务是将文件拆分为逻辑组。
希望这有帮助。
答案 2 :(得分:0)
我个人会尽可能少地将js代码放入文档中。使用模块库(AMD)来模块化代码(这也只加载真正需要的代码并且也是异步的代码)。 使用不引人注目的javascript风格将行为与设计分开。 (example)
答案 3 :(得分:0)
例如,我无法将所有内容放在外部JavaScript中,因为我的服务器端将有关本地化的信息放入javascript中。所以我有:
<script>
XXX.lang = "de-DE";
</script>
第二件事是在运行时或编译时生成“捆绑”脚本。有很多工具可以做到这一点,例如:yui压缩器。使用此工具可以在开发环境(许多文件)之前轻松管理代码,并在生产站点上有一个文件。