angular:html2canvas报错提示Unable to find iframe window

问题:

如题

出现时机:

只在 ctrl+r 页面初始化和首次进入目标界面会报错,如果是延时触发,则不会报错

定位:

查看源码,在chrome进行源码修改后打印,定位到报错代码段

TypeScript 复制代码
    const documentCloner = new DocumentCloner(context, element, cloneOptions);
    const clonedElement = documentCloner.clonedReferenceElement;
    if (!clonedElement) {
        return Promise.reject(`Unable to find element in cloned iframe`);
    }
TypeScript 复制代码
if (this.referenceElement === node && isHTMLElementNode(clone)) {
  this.clonedReferenceElement = clone;
}

打印clone,发现直到ion-route-outlet层,后面的节点没有再遍历了,因此出现报错。而界面如果加载完再调用,则无报错。

根本原因:

暂时没有继续深究,感兴趣的可以继续打印查看。

相关推荐
晓得迷路了6 分钟前
栗子前端技术周刊第 135 期 - Vite 8.1、Rspack 2.1、Babel 8.0...
前端·javascript·vite
你听得到111 小时前
用户说 App 卡,但说不清在哪?我把 Flutter 监控 SDK 升级成了链路观测工作台
前端·flutter·性能优化
To_OC9 小时前
LC 207 课程表:刚学图论那会儿,我连这是拓扑排序都没看出来
javascript·算法·leetcode
To_OC9 小时前
LC 208 实现 Trie 前缀树:曾被名字劝退,写完发现是送分题
javascript·算法·leetcode
天渺工作室10 小时前
实现一个adblock/adblock plus等浏览器广告拦截器检测插件
前端·javascript
阳光是sunny10 小时前
Vue 项目怎么做用户行为全链路监控?轻量插件方案详解
前端·面试·架构
ZhengEnCi10 小时前
Q04-Vite禁用CSS代码分割-解决生产环境样式加载顺序混乱问题
前端·vue.js·vite
九酒11 小时前
AI Agent 开发踩坑记:口播功能非得用 APP 原生实现吗?
前端·人工智能·agent
Jackson__11 小时前
做了一段时间的AI coding后,我终于搞清了 CLI 和 MCP 的区别
前端·agent·ai编程