[英]Async functions return "missing ) after argument list" when type is not module in node.js
我是 JavaScript 的新手,所以如果我忽略了一些明显的东西,请原谅我。
我试图从程序中的文件中读取数据,然后将其分配给变量。
只要我使用 ECMAScript 模块并且在我的 package.json 类型设置为等于模块,它就可以正常工作:
import {promises as fs} from 'fs'; const getDataFromFile = async () => { const result = await fs.readFile('input.txt', {encoding:'utf-8'}); return result } console.log(await getDataFromFile())
当我使用 CommonJS 模块系统和 require() 语法时,我收到一个 SyntaxError:
console.log(等待 getDataFromFile())^^^^^
SyntaxError: missing ) 在参数列表之后
const {fs: promises} = require('fs'); const getDataFromFile = async () => { const result = await fs.readFile('input.txt', {encoding:'utf-8'}); return result } console.log(await getDataFromFile())
我对使用节点 pg 从数据库获取数据的异步 function 进行了相同的尝试,并且行为是相同的。
在异步 function 之外,使用经典然后 promise。
getDataFromFile().then(result => { console.log(result) });
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.