'Upload multiple files with busboy?

I can upload one file, but I can't seem to upload multiple, it gets stuck on the first file.

Client

 async function uploadFiles() {
    let formData = new FormData();

    formData.append("recordUid", recordUid);
    formData.append("fieldUid", fieldUid);

    [...pendingUploadFiles].forEach((file) => {
        formData.append("uploaded_files", file);
    });

    await fetchPostFiles("/api/files", formData);
}

Server

const busboy = require("busboy");
const path = require("path");
const fs = require("fs");

router.post("/api/files", async (req, res, next) => {
    try {
        let bb = busboy({
            headers: req.headers,
            limits: {
                fileSize: 10 * 1024 * 1024, // 10 mb
            },
        });

        bb.on("file", (fieldname, file, filename, encoding, mimetype) => {
            let parts = filename.filename.split(".");
            let name = parts[0];
            let extension = parts[parts.length - 1]; // without the . from .jpeg

            let finalName = `${name}-${+new Date()}.${extension}`;

            let saveTo = `${filesFolderPath}${finalName}`;

            // Open writeable stream to path
            let writeStream = fs.createWriteStream(saveTo);

            // Pipe the file to the opened stream
            file.pipe(writeStream);

            // Check for errors
            writeStream.on("error", (err) => {
                console.log(err);
            });
        });

        bb.on("finish", function () {
            console.log("uploaded");
        });

        return req.pipe(bb);
});


Sources

This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.

Source: Stack Overflow

Solution Source