【发布时间】:2021-06-26 18:09:55
【问题描述】:
我有一个 CRA,希望静态生成首页以缩短加载时间和 SEO。这个想法是运行一个 NodeJS 脚本,在 index.html 中呈现 App 文档。
这是我的代码:
const { renderToString } = require("react-dom/server");
const App = require('./App');
const content = `<html><body>${renderToString(App)}</body></html>`
const fs = require('fs');
fs.writeFileSync('../public/index.html', content);
但是,我在使用 NodeJS 运行它时遇到问题:
import React from 'react';
^^^^^^
SyntaxError: Cannot use import statement outside a module
显然,我必须构建源代码,但我不知道该怎么做。我正在使用 CRA 来构建我的 React 文件(实际上,我正在使用 react-app-rewired,所以如果我知道如何去做,我可以自定义构建过程)。
我应该怎么做才能让它工作?
【问题讨论】:
标签: reactjs create-react-app server-side-rendering react-app-rewired static-site-generation