Saya mencoba membuat pdf dari templat html yang memanggil api, jadi saya menggunakan dalang.

Masalahnya adalah, ketika saya mencoba membuat halaman baru dari peluncuran dalang, itu tidak berhasil dan juga me-restart server dan saya tidak tahu mengapa. Saya sedang mengerjakan localhost dan versi dalangnya adalah ^9.1.1

Berikut adalah kode ketika saya memanggil api dengan mengklik tautan href

    export default async (templateName, { totalPages, currentPage, ...data }) => {
    const browser = await puppeteer.launch({ 
      args: [
        '--no-sandbox',
        '--disable-setuid-sandbox',
      ],
    })
    const html = await handlebars(
    templateName,
    {
      ...data,
    },
  )

  const tmpId = uuidV4()
  const tempFolder = path.join(__dirname, '../', tmpId)
  const tempFilePath = path.join(tempFolder, 'index.html')

  await mkdir(tempFolder)
  await writeFile(tempFilePath, html)
  await copyFolder(
    path.join(__dirname, '../templates', 'quote', 'assets'),
    path.join(tempFolder, 'assets'),
  )

  console.log("here")
  const page = await browser.newPage()
  console.log("after")

  // the code to make the pdf...

  return pdf
 }

Berikut adalah server apinya:

import http_errors from 'http-errors';
const { NotFound } = http_errors;
import 'dotenv/config.js'
import './config/init_redis.js'
import express, { json, urlencoded } from "express"
import htmltopdfRouter from "./html_to_pdf/routes/index.js"

const app = express();
import cookieParser from 'cookie-parser'
import cors from 'cors'
app.use(json())
app.use(cookieParser())
app.use(cors({ credentials: true, origin: "http://localhost:8081" }));
app.use(urlencoded({ extended: true }))

app.use("/api", htmltopdfRouter)

app.use(async (req, res, next) => {
  next(NotFound())
})

app.use((err, req, res, next) => { 
  res.status(err.status || 500)
  res.send({
      success: err.status,
      message: err.message,
  })
})

const port = process.env.APP_PORT || 4000;
app.listen(port, () => {
  console.log("Server up and running on PORT :", port);
});

enter image description here

0
July 25 Mei 2021, 13:21

1 menjawab

Jawaban Terbaik

Anda sedang menulis kode yang membuat direktori dan file temp yang memicu nodemon.

Anda dapat mengecualikan folder tersebut dengan mengedit skrip awal Anda.

Contoh

nodemon --ignore 'tmp/*' index.js

Nodemon - pengecualian file

1
Someone Special 25 Mei 2021, 11:38