我正在尝试将预渲染添加到基本的 React CRA 项目中。我试过 react-snap、react-snapshot、prerender-spa-plugin。但是在构建过程中,我总是遇到同样的错误。在预渲染过程中,WebSocket 和虚拟服务器可能有问题。
即使我尝试从 prerender-spa-plugin 存储库中预渲染 CRA 项目的示例,我也会遇到这个错误。 链接到该示例应用程序
所以我想问题一定不是隐藏在应用程序代码或应用程序设置中。除了预渲染之外的一切都很好。
你知道可能出了什么问题吗?我正在使用节点 v17.17、npm 6.14、Windows 10
这是日志:
Creating an optimized production build...
ErrorEvent {
target: WebSocket {
_events: [Object: null prototype] { open: [Function], error: [Function] },
_eventsCount: 2,
_maxListeners: undefined,
readyState: 3,
protocol: '',
_binaryType: 'nodebuffer',
_closeFrameReceived: false,
_closeFrameSent: false,
_closeMessage: '',
_closeTimer: null,
_closeCode: 1006,
_extensions: {},
_isServer: false,
_receiver: null,
_sender: null,
_socket: null,
url: 'ws://127.0.0.1:60627/devtools/browser/24798c81-2a9d-495e-9f24-ebfce2b17136',
_req: null,
[Symbol(kCapture)]: false
},
type: 'error',
message: 'connect ETIMEDOUT 127.0.0.1:60627',
error: Error: connect ETIMEDOUT 127.0.0.1:60627
at TCPConnectWrap.afterConnect [as oncomplete] (net.js:1146:16) {
errno: -4039,
code: 'ETIMEDOUT',
syscall: 'connect',
address: '127.0.0.1',
port: 60627
}
}
[Prerenderer - PuppeteerRenderer] Unable to start Puppeteer
D:\***\prerender-spa-plugin example create-react-app\node_modules\react-scripts\scripts\build.js:19
throw err;
^
TypeError: Cannot read property 'close' of null
at PuppeteerRenderer.destroy (D:\***\prerender-spa-plugin example create-react-app\node_modules\
@prerenderer\renderer-puppeteer\es6\renderer.js:140:21)
at Prerenderer.destroy (D:\***\prerender-spa-plugin example create-react-app\node_modules\@prere
nderer\prerenderer\es6\index.js:87:20)
at D:\***\prerender-spa-plugin example create-react-app\node_modules\prerender-spa-plugin\es6\in
dex.js:144:29
at processTicksAndRejections (internal/process/task_queues.js:95:5)
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! prerender-spa-plugin-example-create-react-app@0.1.0 build: `react-app-rewired build`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the prerender-spa-plugin-example-create-react-app@0.1.0 build script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.