javascript - 为什么 Angular 文件包含在 <body> 标签中?

标签 javascript angular seo

我注意到 Angular 将其脚本文件放在 index.html 中后 <app-root> <body> 中的元素HTML 的一部分。我想知道为什么它放在那里而不是放在 <head> 的开头部分。
Angular script files placed in the body
在我看来,这会减少页面加载时间,因为它会导致 Angular 的代码在可能位于 <head> 中的所有其他脚本之前加载。 (例如谷歌标签管理器的东西)。这样,页面渲染可以在其他库仍在加载时开始,从而加快渲染速度并提高 SEO 性能。
我找不到 Angular 在 angular.json 中注入(inject)其代码的选项,所以我想我在这里遗漏了一些东西。
如果我没猜错,在 index.html 的 head 部分中包含 Angular 的脚本标签的选项在哪里?
我使用的是 Angular 12.1.3 和 Node 14.17.3。

最佳答案

你可以看看index.html源文件中的文件,您会注意到它实际上几乎是空的。
正文实际上包含一个 app-root仅用作 Bootstrap 的元素(应用程序发生在此元素上)。
由于脚本在执行之前需要此元素存在,因此需要将它们放在它之后。

关于javascript - 为什么 Angular 文件包含在 <body> 标签中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/68774662/

相关文章:

javascript - 将新对象作为参数传递给仅更改 1 个值的函数

javascript - 如何监听 Angular 2 元素的点击并获取事件对象?

angular - 学习有 Angular Dart 并使用有 Angular 画廊部分库

javascript - Google 的抓取工具无法理解自己的 map 。如何解决?

seo - 如何让谷歌抓取 pdf 文件但不索引它们?

javascript - 如何在 div 到达页面顶部时记录

javascript - 如何沿长度为 x 的线段生成 n 个等距点的数组?

Angular 2(cli) Protractor Jasmine 期望没有解决 promise

SEO - 元标签和谷歌

javascript - 使用:contain in list