Почему не работает скрипт собранный webpack`ом?

Доброго дня.
Для примера есть небольшой скрипт который работает если его запускать прям из проекта где он разрабатывается.
Он же собранный через npm run build не работает выдавая ошибку.
Код скрипта
const puppeteer = require('puppeteer');
const browserURL = "http://127.0.0.1:21223"
const url = "https://ya.ru"

const start = async () => {
    const browser = await puppeteer.connect({
        browserURL,
        defaultViewport: {
            width: 1920, height: 1080
        },
    })
    const page = await browser.newPage();
    await await page.goto(url)

}
start()


Разрабатываю в php_storm. Если в нем же, в терминале, выполнить node .\src\r.js то браузер открывает ya.ru.

Если выполнить npm run build и попытаться выполнить получившийся скрипт то выдает ошибку
(node:3852) UnhandledPromiseRejectionWarning: TypeError: Failed to fetch browser webSocket URL from http://127.0.0.1:21223/json/version: fetch is not a function
    at getWSEndpoint (d:\JS\r.js:8494:30)
    at async Object.connectToBrowser (d:\JS\r.js:8481:31)
    at async start (d:\JS\r.js:33806:21)
(Use `node --trace-warnings ...` to show where the warning was created)
(node:3852) UnhandledPromiseRejectionWarning: Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). To terminate the node process on unhandled promise rejection, use the CLI flag `--unhandled-rejections=strict` (see https://nodejs.org/api/cli.html#cli_unhandled_rejections_mode). (rejection id: 1)
(node:3852) [DEP0018] DeprecationWarning: Unhandled promise rejections are deprecated. In the future, promise rejections that are not handled will terminate the Node.js process with a non-zero exit code.


webpack.config

const rConfig = {
    entry: './src/r.js',
    mode: "production",
    target: "node",
    optimization: {
        minimize: false
    },
    output: {
        filename: "r.js",
        path: 'D:\\JS'
    }
}

module.exports = [rConfig]


package.json

{
  "scripts": {
    "build": "webpack"
  },
  "dependencies": {
    "puppeteer": "^10.2.0"
  },
  "devDependencies": {
    "webpack": "^5.52.1",
    "webpack-cli": "^4.8.0"
  }
}


Что происходит? Почему не работает.
  • Вопрос задан
  • 197 просмотров
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

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