此问题在此处已有答案:
Nullish coalescing assignment operator (??=) in NodeJS(4个答案)
昨天关闭。
import puppeteer from 'puppeteer';
import { fileURLToPath } from 'url';
import path from 'path';
export const pdfMaker = async ({ name, id }) => {
const __filename = fileURLToPath(import.meta.url);
const __dirname = path.dirname(__filename);
// Launch a headless Chrome browser
const browser = await puppeteer.launch();
// Open a new page
const page = await browser.newPage();
// Navigate to a website
await page.goto(`http://localhost:3000/record/pdf/${id}`);
// Set the viewport to cover the entire page
await page.setViewport({ width: 640, height: 100 });
// Generate PDF of the entire page
await page.pdf({
path: `uploads/pdfs/${id}.pdf`,
format: 'A4',
printBackground: true,
margin: { top: '20px', right: '20px', bottom: '20px', left: '20px' }
});
// Close the browser
await browser.close();
};
**********************ERROR-************************
file:///app/node_modules/puppeteer/lib/esm/puppeteer/getConfiguration.js:88
configuration.experiments ??= {};
^^^
SyntaxError: Unexpected token '??='
at Loader.moduleStrategy (internal/modules/esm/translators.js:149:18)
当我把我的代码放在渲染器上或尝试在Docker上运行时,它会给出这个错误,而在我的本地机器上,它会成功运行。
1条答案
按热度按时间beq87vna1#
您的代码中的JavaScript语法可能存在问题。具体来说,??=运算符是ECMAScript 2021(也称为JavaScript ES 12)中引入的较新语法。首先检查您的节点版本以及您使用的ES版本。