【问题标题】:SyntaxError: Unexpected token '<' - bundle.js not serverdSyntaxError: Unexpected token '<' - bundle.js 未提供
【发布时间】:2017-02-03 18:45:35
【问题描述】:

我早上将新版本的 react 网站部署到我们的 AWS beanstalk 开发服务器上,但出现了非常严重的问题。 我得到了一个 SyntaxError: Unexpected token '

基本上克隆的环境会失败,而它在生产服务器上可以正常工作。

到目前为止,我注意到的唯一一件奇怪的事情是,当我执行 wget http://phoodster-web-dev.eu-west-1.elasticbeanstalk.com/bundle.js 时,它返回 index.html 而不是 bundle.js 文件,而我们的生产服务器却正确地执行了。

知道有什么问题吗?

更新: bundle.js 之所以看起来像 index.html 是因为 bundle.js 显然没有编译。 在 nodejs 日志中我可能已经找到了原因:

./~/react-geosuggest/module/input.js 中的错误模块未找到:错误: 无法解析模块“react-addons-shallow-compare” /var/app/current/node_modules/react-geosuggest/module @ ./~/react-geosuggest/module/input.js 15:33-72

./~/react-geosuggest/module/suggest-list.js 中的错误模块未找到: 错误:无法解析模块“react-addons-shallow-compare” /var/app/current/node_modules/react-geosuggest/module @ ./~/react-geosuggest/module/suggest-list.js 13:33-72

./~/react-geosuggest/module/suggest-item.js 中的错误模块未找到: 错误:无法解析模块“react-addons-shallow-compare” /var/app/current/node_modules/react-geosuggest/module @ ./~/react-geosuggest/module/suggest-item.js 13:33-72

还是很奇怪,为什么只在新的克隆服务器上失败,而不是主服务器。

【问题讨论】:

  • .js 文件中的script 标记?
  • 您已将 HTML 代码放入 Javascript 文件中。参考错误在线&lt;!DOCTYPE html&gt;
  • 当您打开位于此处的bundle.js - phoodster-web-dev.eu-west-1.elasticbeanstalk.com/bundle.js 时,您只能看到 html 内容而不是 javascript 块。检查并解决。
  • 你在那个 JS 文件中有一个完整的 HTML 页面,你想在那个页面上显示什么 Javascript 代码?
  • 这正是我的问题,我们的生产服务器按预期返回 bundle.js 文件,而不是 index.html 中的代码。我什么都没做。

标签: javascript amazon-web-services reactjs amazon-elastic-beanstalk


【解决方案1】:

您在 bundle.js 中缺少相关的 javascript 代码它看起来像一个没有内容的 index.html 这可能是由于意外覆盖文件或您的测试中有一些编译错误

编辑:

您需要以这种方式安装节点模块(在控制台中)

  npm i react-addons-shallow-compare

所以它不会再次失败它只是缺少模块

【讨论】:

  • 谢谢!它确实修复了它,但我不明白为什么这个问题只是在部署之间出现,而我们没有改变任何东西。星期五工作正常,在生产服务器上工作正常。
  • 有人手动将其安装在您的生产服务器中(可能),而没有与团队其他成员进行沟通并忘记在依赖项中列出它
猜你喜欢
  • 2017-11-16
  • 2019-03-31
  • 2021-05-15
  • 2012-05-17
  • 2019-02-10
  • 2019-11-10
  • 2014-07-08
  • 2013-11-15
  • 2020-09-26
相关资源
最近更新 更多