fs writeFile в узле цикла for js

str = 'Lol', str2 = 'lOl', regex = new RegExp('^' + str + '$', 'i');
if (regex.test(str)) {
    console.log("true");
}
0
задан Arti Bgdn 13 July 2018 в 12:00
поделиться

1 ответ

Попробуйте это, он будет загружать ваш файл один за другим, это займет время, но git вам соответствующий результат:

   let fileUpload = async (FILES , PATH, CB)=>{
        /** image Path **/
        let lengthOfFiles = FILES.length, RETURN_IMAGEPATHS = [], count = 0, 
        uploadFunc= [];
        for(let index= 0; index < lengthOfFiles; index++){
                let name = Date.now() + ".png";
                RETURN_IMAGEPATHS.push('http://localhost:3000/' + <PATH_FOR_FILE> + name);
                uploadImage(<Image save path>, <Imagte file path>, FILES[index]);
        }

        CB(null, RETURN_IMAGEPATHS);
    };

function uploadImage(imageSavePath, filePath, FILE){
    return new Promise(async (resolve, reject)=> {

        await fs.writeFileSync(imageSavePath, FILE, "base64", function (err) {
            if (err)
                reject(err);
            else {
                filePath ='http://localhost:3000/' + filePath;
                resolve(filePath);
            }
        });
    })
}

fileUpload(FILES , PATH, (err)=>{
  if(err){
    console.log(err);
  }
   else
  console.log('Success');
})
0
ответ дан radhey shyam 17 August 2018 в 12:59
поделиться
  • 1
    Были реализованы обещания и асинхронные функции, чтобы избавиться от обычных обратных вызовов. uploadImage обещание просто игнорируется. – estus 13 July 2018 в 12:40
Другие вопросы по тегам:

Похожие вопросы: