Microsoft F12工具和Microsoft工具预览应用程序在打开时崩溃。此问题不发生在同一网站使用新的微软边缘铬版本。
我写这个问题的目的是自我回答,在调试了7个小时之后
我正在为office开发一个Excel外接程序,使用新的Microsoft,它刚刚推出,并将IE11替换为在Excel中使用边缘嵌入的IFrame (参见https://developer.microsoft.com/en-us/office/blogs/microsoft-edge-webview-for-office-add-ins/)。在上个月推出之后,问题就出现了。
崩溃是可预测的,在激活工具5秒后发生。当在边缘浏览器中使用F12工具时,以及在使用独立的Dev预览以远程连接到MS中运行的边缘浏览器时,就会发生这种情况。
(我不会放app事件日志,因为我已经解决了)
发布于 2019-06-21 01:57:14
这是微软的错误,不是编码错误。
它总是发生在使用类型记录和定义只有一个元素的多维数组时,并且只在异步函数中发生。
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对于那些阅读这篇文章的人来说,他们会正确地问“为什么你要定义一个只有一个元素的多维数组”。这是因为MS是一个2D数组,要设置单元格的值,Excel需要二维数组Excel.Range.values =any。因此,如果您只想设置一个单元格的值,则必须提供一个只有一个值的多维数组。
注意:由于Microsoft不再支持Microsoft tools预览,因此我没有向Microsoft引发此bug,而是将重点放在推出边缘Chromium版本上,从而不推荐这些工具。这个问题在边缘发行版中没有出现,但我不知道何时在Excel中作为嵌入式浏览器推出边缘铬(我们上个月才把IE11抛在脑后)。
发布于 2019-07-02 20:41:23
@JimbobTheSailor,谢谢您抽出时间报告这个问题,并回来提供问题的可能原因。
我知道你已经花了很多时间在这个问题上,但我希望你能提供一个示例代码文件,甚至npm包,这会导致这个问题吗?我去添加了您的代码,并试图重现问题,但我做不到。GitHub回购!通过提供整个包或示例,我还可以看到不同版本的TypeScript和其他依赖项。你也可以把它们列在这里。
如果可能的话,也不介意抓住它,你能提供你正在使用的Windows版本吗?开始运行WINVER。另外,DevTools预览版?示例:
C:\Program Files\WindowsApps\Microsoft.MicrosoftEdgeDevToolsPreview_18.924.1.0_x64__8wekyb3d8bbwe 要运行我的样本,您所要做的就是:
npm install
npm run build:dev
npm start...or的纱线当量。
这将构建,副业应用程序,并启动Excel。
https://stackoverflow.com/questions/56695936
复制相似问题