我想将导出的函数保存到变量以使用Promise.all
。
但是,当我将函数分配给变量时,它将运行。我要在分配功能时阻止运行。
示例代码
a.js
module.export = function say_hello(){ console.log('hello') }
b.js
var hello = require('./a.js');
var f1 = hello();
我的期望是不要运行hello()并分配给f1。
我该怎么办?
答案 0 :(得分:0)
a.js
module.exports = {
hello: function say_hello() { console.log('hello'); }
}
b.js
var a = require ('./a.js')
a.say_hello();
答案 1 :(得分:0)
Promise.all
期望使用一组promise参数作为输入,因此必须首先将函数更改为Promise
:
module.export = function say_hello() {
return new Promise(function (resolve, reject) {
console.log('hello');
// whatever
resolve();
});
}
然后,当您需要时就会有一个承诺:
var hello = require('./a.js');
var f1 = hello();
Promise.all([f1,...])