【发布时间】:2021-05-01 05:07:24
【问题描述】:
我的代码与网络上的许多示例类似,包括 https://mdn.github.io/dom-examples/web-share/ 的 MDN 代码
btn.addEventListener('click', () => {
navigator.share(shareData)
.then(() =>
console.log('MDN shared successfully');
)
.catch((e) =>
console.error('Error: ' + e);
)
});
问题:
navigator.share 如果共享被拒绝,则返回一个应该失败的承诺。就我而言,它会这样做,但会延迟几秒钟。
我的主要问题是这种延迟:如果我知道共享 API 失败,我可以回退,但在这里我需要等待未知的时间才会出现错误。
模式详情:
- 错误是“错误:AbortError:共享已取消”
- 我没有取消任何东西(在错误发生之前我看不到 UI)。也许 Windows 在没有显示任何消息的情况下拒绝了某些事情。
- 我使用的是 Windows 8.1 Pro,这可能与此有关。
- Chrome 90.0.4430.93(和以前的版本 89.0.4389.128)和 Edge(89.0.774.54 官方版本 64 位)也有同样的问题
- 延迟超过 20 秒(断开互联网访问不会改变)
【问题讨论】:
标签: windows-8.1 chromium web-share