如何导出异步函数?
问题描述:
下面是我的代码 -如何导出异步函数?
abc.js
class abc {
async foo1() {
// do something
return result;
}
async foo2() {
// do something
return result;
}
module.exports = abc
}
另一-file.js
const abc = requir(./abc);
abc.foo1();
// this results in error
// TypeError : abc.foo1 is not a function
我应该怎么办呢?
答
几点。按照惯例,类名以大写字母开头。你的问题与异步函数无关。你有2个选择来解决这个问题。第一个选项是让你的功能是静态的。那么你可以直接使用它,无需实例。第二种选择只是以不同的方式调用它:首先实例化类以获取实例,然后在此实例上调用您的方法。 还要记住,await关键字只能在其他异步函数中使用。如果要处理承诺,则需要等待关键字,由异步函数返回(它返回的承诺为result
,而不是result
)
'abc'是一类。你需要一个实例。这与async无关。 – SLaks