我有两个文件,分别是main.js和index.js。该函数位于main.js内部,并且该对象在index.js内部被调用。
到目前为止,通过使用console.log,我可以通过使用.then()避免()来查看预期变量'newtf'的值,但是我无法访问该值在then函数之外。
第一个文件:
async function getName() {
//main.js
... // unnecessary lines of code
files.forEach(file =>
{
newtf = file.name;
//console.log(`-----`+file.name);
})
return newtf //the variable to output
}
第二个文件:
//index.js where the object is being called
var foo;
const a = require('./main.js');
a.getName().then(newtf => {
foo = newtf;
console.log(foo) //output is value of newtf
})
console.log(foo) //output is undefined
我的问题是,如何输出'foo'而不会出现未定义或未承诺的情况?我查找了许多具有类似问题的资源,但是除了.then()并等待,我无法找到将变量传递给函数之外的解决方案。预先谢谢你。