首页 > 解决方案 > 在 Node.js 中使用 Aysnc/Await 时出现语法错误

问题描述

我对 Node.js 比较陌生,我遇到了一个错误,代码是:

async function loadingOneImage(file){
........
}


async function generateDataset() {
    const {image, target} = await loadingOneImage(file)
}

 generateDataset();

代码结构见上图。我有一个函数 generateDataset() 最初被调用。在 generateDataset() 内部,正在调用另一个函数 loadingOneImage()。但是一旦我运行程序,我就会遇到以下错误:

/home/nauyan/Desktop/EsperSolutions/TensorFlow.js/tfjs-examples/simple-object-detection/dataprep.js:85
                const {image, target} = await loadingOneImage(file)
                                        ^^^^^

SyntaxError: await is only valid in async function
    at Module._compile (internal/modules/cjs/loader.js:721:23)
    at Object.Module._extensions..js (internal/modules/cjs/loader.js:787:10)
    at Module.load (internal/modules/cjs/loader.js:653:32)
    at tryModuleLoad (internal/modules/cjs/loader.js:593:12)
    at Function.Module._load (internal/modules/cjs/loader.js:585:3)
    at Function.Module.runMain (internal/modules/cjs/loader.js:829:12)
    at startup (internal/bootstrap/node.js:283:19)
    at bootstrapNodeJSCore (internal/bootstrap/node.js:622:3)

有人可以就这个问题给我建议。

标签: javascriptnode.jsasynchronousasync-await

解决方案


推荐阅读