Node.js NodeJ使用PDF creator通过电子邮件发送PDF

Node.js NodeJ使用PDF creator通过电子邮件发送PDF,node.js,nodemailer,html-pdf,Node.js,Nodemailer,Html Pdf,我是新来的NodeJS。我正在尝试从HTML生成PDF,并使用nodemailer通过电子邮件发送 exports.testReqID = async (req, res, next) => { const ID = req.params.myID; const htmlData = ` <html> <head></head> <body>

我是新来的NodeJS。我正在尝试从HTML生成PDF,并使用nodemailer通过电子邮件发送

exports.testReqID = async (req, res, next) => {
    const ID = req.params.myID;

    const htmlData = `
        <html>
            <head></head>
            <body>
                <h1>PDF Test. ID: ${ID}</h1>
            </body>
        </html>
    `; // Just a test HTML

    pdf.create(htmlData).toBuffer(function(err, buffer){
        let emailBody = "Test PDF";
        const email = new Email();
        const transporter = email.getTransporter();
        await transporter.sendMail({
            from: 'support@myemail.com', 
            to: 'me@myemail.com', 
            subject: "TEST", 
            html: emailBody, 
            attachments: {
                filename: 'test.pdf',
                contentType: 'application/pdf',   
                path: // How can I do it?
            }
        }); 
    });
};

Email类只是我对nodeEmailer的设置,它从transporter=nodeEmailer.createTransport返回一个transporter…

您可以将其作为缓冲区发送


完美的非常感谢。
exports.testReqID = async (req, res, next) => {
    const ID = req.params.myID;

    const htmlData = `
        <html>
            <head></head>
            <body>
                <h1>PDF Test. ID: ${ID}</h1>
            </body>
        </html>
    `; // Just a test HTML

    pdf.create(htmlData).toBuffer(function(err, buffer){
        let emailBody = "Test PDF";
        const email = new Email();
        const transporter = email.getTransporter();
        await transporter.sendMail({
            from: 'support@myemail.com', 
            to: 'me@myemail.com', 
            subject: "TEST", 
            html: emailBody, 
            attachments: {
                filename: 'test.pdf',
                content: buffer',   
            }
        }); 
    });
};