如何解决即使加载了所有内容,Angular 应用程序也会在 iframe 中显示白页
我有一个带有 Angular 10 的 ASP.NET Core 3.1 站点(使用 Asp.NET Zero),其中一个页面有一个 iframe,它显示来自子域(旧 VB.NET WebForms 4.0 站点)的网页:
><iframe [src]="pageUrl | safeUrl" style="height: 100%;" frameBorder="0">
<p>Your browser does not support iframes</p>
</iframe>
通过单击 Angular 应用程序中导航栏中的项目来更改 pageUrl
变量。
这种架构在前 10-15 次点击时效果很好。之后,每次单击导航项都会下载请求的页面(网络选项卡显示 HTTP 200 和实际的 ASPX 响应),但 iframe 不会绘制内容。尽管已加载,但整个 iframe 内容保持白色。
我认为有一些症状很重要:
- 如果我单击但不移动鼠标,我会看到 Web 请求已完成并且页面保持白色,直到我移动鼠标并通过 CSS 中的
:hover
事件触发菜单项的重绘。如果我不移动鼠标,它可以保持白色一分钟。 - 重绘发生时,“网络”选项卡中没有活动,肯定是由鼠标移动触发的。
- 即使在我之前访问过并正确显示的 ASPX 页面上也会发生这种“白页”效果。
- 如果我以某种方式在 iframe 内移动鼠标而不触发重绘,我可以看到鼠标光标在浏览链接或 CSS 中具有不同
cursor
的其他元素时发生变化。
我的菜单、CSS 或 JS (Angular) 上没有针对此行为进行自定义。
谷歌没有帮助并指出“白闪光”效果,我不相信这是我所拥有的。因此,即使它们不是完整的解决方案,任何建议也将不胜感激。这个问题阻止我进入生产环境。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。