【发布时间】:2021-07-15 04:03:05
【问题描述】:
所以我的问题是代码末尾的 console.log() 总是在强大形式的解析完成之前打印,我不知道如何避免这种情况
exports.scrape = (req,res) => {
let form = new formidable.IncomingForm();
form.keepExtensions = true;
form.parse(req, (err, fields, files) => {
if (err) {
return res.status(400).json({
error: 'Image could not be uploaded'
});
}
const { endpoint } = fields;
if (!endpoint ) {
return res.status(400).json({
error: 'All fields are required'
});
}
if (files.file) {
if (files.file.size > 1000000) {
return res.status(400).json({
error: 'Image should be less than 1mb in size'
});
}
var oldPath = files.file.path;
console.log(oldPath);
var newPath = path.join(__dirname, '../src/files/csv')
+ '/'+files.file.name
var rawData = fs.readFileSync(oldPath)
fs.writeFile(newPath, rawData, function(err){
if(err) console.log(err)
return console.log(newPath);
})
}
})
console.log("测试!"); }
然后,当解析完成后,我需要创建另一个操作,以便稍后在另一个脚本中使用它,该脚本将在解析结束时初始化,这将是 console.log("test!" ) 是
【问题讨论】:
-
这和Java有什么关系?你知道 Java 和 JavaScript 是两种完全不同的语言,对吧?
-
是的,谢谢,我现在编辑了标签
-
你想将你的函数声明为异步并等待需要一些时间来执行。
-
在这里做额外的事情:
console.log(newPath)
标签: javascript node.js ecmascript-6 promise formidable