我使用 Visual Studio Code 开发和调试 Angular 2 应用程序,附加到 Chrome (v 48) 进行调试。
每次我启动应用程序时都会出现异常:
fetchPromise = global['fetch']();
每次我使用调试器启动我的应用程序时,是否有一个技巧可以避免在出现该异常时停止调试器?
这是 zone.js 中我有异常的代码:
if (NativePromise) {
patchThen(NativePromise);
if (typeof global['fetch'] !== 'undefined') {
var fetchPromise = void 0;
try {
// In MS Edge this throws
fetchPromise = global['fetch'](); // <== Exception HERE
}
catch (e) {
// In Chrome this throws instead.
fetchPromise = global['fetch']('about:blank');
}
我在 package.json 中使用了 zone.js v0.6.26,我更新到 0.7.2,异常仍然存在。
最佳答案
感谢贴出的建议here由 roblouren 和 LEOTM 链接。将文件 zone.js
添加到 launch.json
的 expertimentalSkipDiles
选项是该恼人异常的完美解决方案。
异常仍然存在,但不会在每次编译和更新代码时在屏幕上弹出。
在 Visual Studio Code 项目的 launch.json 中:
{
"version": "0.2.0",
"configurations": [{
"name": "Launch Chrome against localhost, with sourcemaps",
"type": "chrome",
"request": "launch",
"url": "http://localhost:3000",
"sourceMaps": true,
"webRoot": "${workspaceRoot}",
"experimentalSkipFiles": [
"zone.js"
]
}
关于javascript - Angular2 : how to prevent exception on specific file like zone. js?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40913200/