首页 > 解决方案 > 无法在反应应用程序中运行 puppeteer,找不到模块:编译时无法解析“ws”

问题描述

我想知道是否可以在我的反应应用程序中运行 puppeteer。每当我尝试在我的反应应用程序中运行 puppeteer 时,我都会收到“找不到模块:无法解析 'ws'”。我已经尝试安装 ws 但仍然会得到同样的错误。

标签: javascriptreactjspuppeteer

解决方案


扩展上述答案。您不能直接在反应应用程序上运行 Puppeteer。React 应用程序是一个前端框架,您需要 Puppeteer 在节点 js、服务器上运行。这是一个简单的“修复”,我想比上面的答案多解释一点。

让他们一起工作的步骤是。

  1. 设置快速服务器。您可以像这样创建一个快速服务器:单独的目录reactServerNpm init目录和npm i express.

在您的快速服务器中,您分配一条路径

const express = require('express')
const app = express()
const port = 5000

app.get('/', (req, res) => {
  res.send('Hello World!')
})

app.get('/my-react-path', (req, res) => {
  // run any scripts you need here
})

app.listen(port, () => {
  console.log(`Example app listening at http://localhost:${port}`)
})

然后您的反应应用程序将与您的服务器交互,如下所示:

localhost:5000/my-react-path

在其中,my-react-path您可以创建一个函数来启动 puppeteer 并在服务器端执行您想要的所有事情,并且它可以将任何结果返回给 React。上面的示例只是为了让您入门,它与 puppeteer 没有任何关系。


推荐阅读