相关疑难解决方法(0)

如何在visual studio代码中调试async/await?

我想在visual studio代码中调试包含async/await的js文件,但它提醒我vscode不支持它.我该怎么做才能使vscode支持async/await?

javascript async-await visual-studio-code

12
推荐指数
2
解决办法
6826
查看次数

异步等待与nodejs 7

我安装了nodejs 7.3.0,我有这个代码:

let getContent = function (url) {
    // return new pending promise
    return new Promise((resolve, reject) => {
        // select http or https module, depending on reqested url
        const lib = url.startsWith('https') ? require('https') : require('http');
        const request = lib.get(url, (response) => {
            // handle http errors
            if (response.statusCode < 200 || response.statusCode > 299) {
                reject(new Error('Failed to load page, status code: ' + response.statusCode));
            }
            // temporary data holder
            const body = [];
            // on every content …
Run Code Online (Sandbox Code Playgroud)

node.js async-await

8
推荐指数
1
解决办法
4230
查看次数

在Vscode中的Typescript中等待后如何调试代码?

我在Vscode 1.33.1,Node 11.12,Typescript 3.4.3,vscode-chrome-debug-core 6.7.46上,我正在尝试调试React Native项目。

只要我不打await,一切都会正常进行。但是,当我点击包含的行时,await在该await行之后(包括该await行),我不会遇到任何断点。代码正常运行,但是调试器陷入混乱。如果我在该await行之前放置一个断点并尝试进入/移出/跳出,它会跳入难看的index.bundle代码。

这发生在我的应用程序中的多个位置,因此也不是孤立的情况。

这是我在中的活动配置launch.json

{
    "name": "Debug iOS (sim)",
    "program": "${workspaceRoot}/.vscode/launchReactNative.js",
    "type": "reactnative",
    "request": "launch",
    "platform": "ios",
    "sourceMaps": true,
    "outDir": "${workspaceRoot}/.vscode/.react",
    "smartStep": true,
    "skipFiles": [
        "${workspaceFolder}/node_modules/**/*.js",
        "${workspaceFolder}/lib/**/*.js",
        "<node_internals>/**/*.js"
      ]
},
Run Code Online (Sandbox Code Playgroud)

从配置中可以看出,我已经尝试过smartStep(无论如何都不允许使用该代码。)skipFiles(除非我明确介入,否则它确实会跳过文件,因此它可以工作,但不能解决问题)。我还看到了使用Typescript + VSCode调试Node.js异步/等待,但是我已经尝试过smartStep了,对该问题的关注已经很久了,许多版本已经解决了。

如何调试包含await正确的Typescript代码?

更新:当我绕过Vscode调试/配置并在Chrome和Vanilla终端(例如react-native run-ios)中调试时,它可以完美运行。因此,这与Vscode或其配置有关。

更新2:我的目标是ES2017,这是我的tsconfig

{
  "compilerOptions": {
    "target": "es2017",
    "module": …
Run Code Online (Sandbox Code Playgroud)

node.js async-await typescript react-native visual-studio-code

5
推荐指数
1
解决办法
599
查看次数