excel - Microsoft Edge F12 和 Microsoft Edge 开发工具预览崩溃
问题描述
Microsoft Edge F12 工具和 Microsoft Edge Dev Tool Preview 应用程序在打开时崩溃。在使用新 Microsoft Edge Chromium 版本的同一网站上不会出现此问题。
在经过 7 个小时的调试后,我正在写这个问题,目的是自我回答
我正在使用刚刚推出的 Office 插件的新 Microsoft Edge WebView 开发 Excel 插件,并将 IE11 替换为带有 Edge 的 Excel 中的嵌入式 IFrame(请参阅https://developer.microsoft.com/en-us /office/blogs/microsoft-edge-webview-for-office-add-ins/)。在上个月推出之后,问题就出现了。
崩溃是可预测的,在激活工具 5 秒后发生。当在 Edge 浏览器中使用 F12 工具时,以及使用独立的 Dev Tools Preview 远程连接到在 MS Excel 中运行的 Edge 浏览器时,会发生这种情况。
(我不会放app事件日志,因为我已经解决了)
解决方案
这是 Microsoft 错误,而不是编码错误。
它总是在使用 Typescript 并定义一个只有一个元素的多维数组时发生,并且只在异步函数中
async myFunc(){
let x:number[][] = [[9]]; //Edge F12 tool will crash simply by having this line
}
该问题不会出现在非异步函数中,如果变量被定义为类成员也不会出现。如果定义了多个元素,则不会发生这种情况。解决方法是将变量定义为私有类成员
public x:number[][] = [[9]]; //ok as member variable
let x:number[][] = [[9,2]]; //ok - even in async function
对于那些正确地问“为什么要定义一个只有 1 个元素的多维数组”的人来说。这是因为 MS Excel 是一个二维数组,为了设置单元格的值,Excel API 需要二维数组 Excel.Range.values[][] =any[][]。因此,如果您只想设置一个单元格的值,则必须提供一个只有一个值的多维数组。
注意。我没有向 Microsoft 提出这个错误,因为他们不再支持 Microsoft Edge Dev Tools 预览版,而是专注于推出 Edge Chromium 版本,因此弃用了这些工具。Edge Chromium 开发者版本中不会出现此问题,但我不知道 Edge Chromium 何时会作为 Excel 中的嵌入式浏览器推出(我们上个月才刚刚离开 IE11)
推荐阅读
- c# - cosmos db 中的高调度指标等待时间
- c++ - 防止 gcc 将我的 AVX2 内部函数复制到 REP MOVS
- c# - 我正在 Xamarin 中寻找更可靠的选择
- ios - 更改 iOS 语言首选项时重置动态 UIApplicationShortcutItems
- docusignapi - DocuSign Integrator 密钥发布上线问题
- javascript - jqxDropDownList 列表在页面底部单独打开
- javascript - 在鼠标上绘制文本 将鼠标悬停在光标位置的图形上
- angular - Kendo Grid Angular自定义按一个字段排序
- r - 在 tidyverse 中使用正则表达式进行过滤 - 不清楚为什么这不起作用
- python - 测试大整数的快速方法