javascript - AngularJS Web应用程序查看页面源仅显示 "index.html"内容

标签 javascript html angularjs uiview angular-ui-router

我正在使用 AngularJS 进行 Web 应用程序开发。在我的应用程序中,我使用 UI-router 来实现路由目的和 yeoman 文件夹结构。

我检查了其他 Angular 网站,例如 https://www.amazon.com , https://itunesconnect.apple.com 。在这些站点中,查看页面源代码显示页面中使用的 html 内容。但在我的应用程序中,它只显示在index.html 中添加的脚本。我不知道为什么它会发生在我的应用程序中。我认为这是因为我的用户界面路由器或文件夹结构。

如何在我的应用程序中使用相应的 HTML 制作 View 页面源代码。 请建议什么方法可以解决此问题。

最佳答案

如果我查看亚马逊的查看源代码,我找不到任何 angularJS 文件以及与 AngularJS 相关的任何内容。

Itunes 使用 AngularJS 但如果我查看 body 标记,没有太多 HTML,我可以看到 ui-view那里,

<div id="view-wrapper" class="flexcol" ui-view></div>

如果您使用ui-view,该页面将像您的页面和itunes页面一样。 ituneshead 标签内有大量脚本和其他项目,但在 body 标签内只有很少的元素。

查看源代码 将显示作为初始同步请求的一部分加载的静态 html。

并且不会显示任何通过异步(ajax)请求动态添加的内容。

由于 ui-view 异步加载内容并动态附加 html,因此您无法在 View 源中查看相同内容。

如果您在任何现代浏览器(例如 ChromeFirefoxIE11+ 等)中右键单击页面,您可以右键单击并单击“检查元素”以查看动态添加的内容。

如果你想在 View 源中显示完整的 html,你需要摆脱 ui-view 并将所有必需的 html 静态化。

关于javascript - AngularJS Web应用程序查看页面源仅显示 "index.html"内容,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41255783/

相关文章:

javascript - 使用 Angular 元素 ID 来添加类,但不会在页面呈现后添加类

javascript - 如何使用AngularJS实现这种悬停效果?

javascript - 更改存储为十六进制整数的颜色的单个 channel (RGB)

jquery - 循环遍历每个 HTML 表格列并使用 jQuery 获取数据

html - CSS 中的设计问题

javascript - innerHTML 仅在 Chrome 中编码

javascript - 如何将 $scope 传递给服务

javascript - 在 Javascript 中,所有内置对象都是不可变的吗?

javascript - 如何在图像的文本之间设置自动间距

javascript - 加载已经旋转的 css 元素