Javascript Node.js导出函数赋值给变量
我想将导出的函数保存到一个变量中,以使用Javascript Node.js导出函数赋值给变量,javascript,node.js,promise,Javascript,Node.js,Promise,我想将导出的函数保存到一个变量中,以使用Promise.all。 但当我将函数赋给变量时,它会运行。我想在分配函数时阻止运行 示例代码 a、 js b、 js 我的期望是不要运行hello()并分配给f1 我该怎么办?a.js module.exports = { hello: function say_hello() { console.log('hello'); } } b、 js Promise.all需要一组Promise参数作为输入,因此必须首先将函数更改为Promise:
Promise.all
。
但当我将函数赋给变量时,它会运行。我想在分配函数时阻止运行
示例代码
a、 js
b、 js
我的期望是不要运行hello()并分配给f1
我该怎么办?a.js
module.exports = {
hello: function say_hello() { console.log('hello'); }
}
b、 js
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,...])
我不明白你想要实现什么。为什么不执行var f1=require('./a.js')?或者var f1=helloJust assign而不调用函数:
var f1=hello
在这个例子中,我没有写任何关于Promise
的代码。实际上在a.jssay_hello()
中返回Promise
我想将say_hello()
函数推到数组中并运行Promise.all()
。这就是我真正想做的。在真实的代码中,我必须传递args来说_hello()。Promise.all([hello(params),hello(differentpams)])。然后(()=>{…})
?虽然这段代码可以回答问题,但提供关于如何和/或为什么解决问题的额外上下文将提高答案的长期价值。
var a = require ('./a.js')
a.say_hello();
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,...])