我再次破坏b *** s ... 我很抱歉不得不回到你们,但我觉得网上提供的信息很混乱,似乎无法找到适合我的问题的答案。 所以如果你们中的一个向导/神的帮助我,我会非常感激。NodeJS异步/等待输出变量
我试图导出一个变量,从承诺产生一个不同的模块。 这里是我的代码:
主要:
//app.js <--- This is where I need the variable exported.
var sp1 = require('./module');
var somePromise2 = new Promise((resolve, reject) => {
resolve('Hey! It worked the second time!');
});
async function exec() {
const message1 = await sp1.msg
const message2 = await somePromise2
console.log('Success', message1, message2);
}
exec()
,并承诺该模块:
//module.js
var somePromise1 = new Promise((resolve, reject) => {
var msg = '';
resolve(msg = 'Hey! It worked!');
});
module.exports = {
somePromise1,
}
正如你可以看到somePromise1,其实是一样的somePromise2但在不同的模块。事情是,我显然似乎无法得到要导出的味精变量,它会产生一个未定义的(如果我在本地执行所有操作:在同一个文件中,它可以毫无用处地工作)。
在此先感谢您的帮助,并提前对不起,如果您发现这是一个现有问题的副本... I'crawled SO自昨天起回答并移动代码,但似乎没有任何适用。 。
您没有导出'msg'变量。你只是出口'somePromise1'的承诺。 –