如何在 Chrome 中捕获 DOMException?
How to catch DOMException in Chrome?
我收到这个错误:
Uncaught (in promise) DOMException: lockOrientation() is not available on this device.
code: 9
message: "lockOrientation() is not available on this device."
name: "NotSupportedError"
当我运行下面的代码在Chrome时:
try {
screen.orientation.lock('portrait');
} catch (error) {
// whatever
}
抛出错误是意料之中的事,因为桌面 Chrome 不支持方向锁定。我想捕获错误,这样它就不会乱扔控制台,但将其包装在 try...catch
块中似乎不起作用。
为什么我抓不到?我错过了什么吗?
try/catch
在这里不起作用,因为 screen.orientation.lock('portrait');
实际上是 returns 抛出错误的 Promise。这部分错误表明在promise中抛出了异常。
Uncaught (in promise) DOMException: lockOrientation() is not available on this device.
要处理异常,您可以附加一个 catch
回调。
screen.orientation.lock('portrait').catch(function(error) {
// whatever
});
我收到这个错误:
Uncaught (in promise) DOMException: lockOrientation() is not available on this device.
code: 9
message: "lockOrientation() is not available on this device."
name: "NotSupportedError"
当我运行下面的代码在Chrome时:
try {
screen.orientation.lock('portrait');
} catch (error) {
// whatever
}
抛出错误是意料之中的事,因为桌面 Chrome 不支持方向锁定。我想捕获错误,这样它就不会乱扔控制台,但将其包装在 try...catch
块中似乎不起作用。
为什么我抓不到?我错过了什么吗?
try/catch
在这里不起作用,因为 screen.orientation.lock('portrait');
实际上是 returns 抛出错误的 Promise。这部分错误表明在promise中抛出了异常。
Uncaught (in promise) DOMException: lockOrientation() is not available on this device.
要处理异常,您可以附加一个 catch
回调。
screen.orientation.lock('portrait').catch(function(error) {
// whatever
});