目前,我正在处理两个文件。 index.js和index.main.js
对于Node.js仍然是新手,而我正在为这个未决的希望问题而烦恼。我的函数工作正常,我可以使用.then()来console.log记录值,但是当我尝试console.log函数时,会得到未决的承诺。
我尝试添加一个promise语句和一个回调,但是由于缺乏了解,我无法找到解决方案。该函数在index.js中调用。下面是我的以下代码:
//this is in index.main.js
module.exports.getName = async function getName(newtf) {
const {Storage} = require('@google-cloud/storage');
const storage = new Storage();
const bucketName = 'probizmy';
const [files] = await storage.bucket(bucketName).getFiles();
files.forEach(file => {
newtf = file.name;
//console.log(`-----`+file.name);
});
return await newtf; //the value that I want to output
}
下面的代码是我希望输出的位置。
//this is in index.js
const a = require('./index.main.js');
console.log(a.getName()); // output is Promise { <pending> }
a.getName().then( newtf => { console.log(newtf) } //output is the filename
我想做的是代替使用
a.getName().then( newtf => { console.log(newtf) }
我要使用
a.getName()
显示该值,以便我可以在例如
的示例中使用它 console.log("The file name is: +a.getName());
希望对此事有所投入。预先谢谢你:)