【问题标题】:Heroku Deployment Errors - Node with Create-React-AppHeroku 部署错误 - 带有 Create-React-App 的节点
【发布时间】:2019-11-29 22:37:47
【问题描述】:

Create-React-App 在部署到 Heroku 后无法正常工作。我得到了 index.html 文件,并且从 html 中显示了测试元素,但是 react 应用程序(附加到 html 中的另一个 div)不起作用,并给出如下所示的错误:

Uncaught SyntaxError: Unexpected token '<'  
main.ca3192ef.chunk.js:1 Uncaught SyntaxError: Unexpected token '<'   
manifest.json:1 Manifest: Line: 1, column: 1, Syntax error.

("Unexpected token" - 在浏览器中点击时指向 html 的第一个 "console)

【问题讨论】:

  • 你能在这里分享 package.json 吗?另一个问题,您是否通过节点服务器(express)为您的 react 应用程序提供服务?
  • @Mohammednaji ,上面是 package.json 截图;客户端和服务器文件夹都有自己的 index.js,客户端保存 create-react-app,服务器有起始 index.js,根目录下的 index.js 只是加载服务器目录中的那个(我添加它以防万一必须在云端拥有 index.js)
  • @Mohammednaji,是的,react 应用程序是通过节点服务器提供的;这是部署代码``` if (process.env.NODE_ENV === "production") { app.use(express.static('../client/build')); app.get('*', (req, res) => { var reqPath = path.join(__dirname, '../'); res.sendFile(path.resolve(reqPath, "client", "build", "index.html")) //__dirname 是当前目录 }) }
  • @DavitG 你试过使用create-react-app-buildpack 吗?它可以稍微简化部署过程。
  • @NKiD,我没有尝试过构建包,因为我不打算出现这样的错误,但我的 index.js 在部署后提供服务(如你所见的'test div' on截图,这意味着一些小修复可以解决整个问题)。我一定会看看的!谢谢

标签: node.js reactjs heroku deployment create-react-app


【解决方案1】:

所以我发现了问题所在。 问题是静态资产(包括 React 应用程序)没有被提供 - 应该从根目录的角度给出目录

【讨论】:

猜你喜欢
  • 2017-09-21
  • 1970-01-01
  • 2018-12-25
  • 2022-08-13
  • 2017-06-06
  • 2018-12-26
  • 1970-01-01
  • 1970-01-01
  • 2019-12-24
相关资源
最近更新 更多