构建和部署后反应firebase错误SyntaxError:expected expression,得到'<'

时间:2018-06-02 16:42:37

标签: json firebase firebase-hosting

我正在尝试通过firebase部署我的反应应用程序但是在部署之后我得到一个空白页面和SyntaxError:期望的表达式,得到了'<'。我认为这是因为它正在阅读<从HTML,但我不知道如何解决这个问题。下面是index.html form我的build文件夹,它初始化为firebase的源代码

<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="utf-8">
    <meta name="viewport" content="width=device-width,initial-scale=1,shrink-to-fit=no">
    <meta name="theme-color" content="#000000">
    <link href="../src/App.css" rel="stylesheet">
    <link href="https://fonts.googleapis.com/css?family=Open+Sans" rel="stylesheet">
    <link href="https://fonts.googleapis.com/css?family=Merriweather:900" rel="stylesheet">
    <link rel="manifest" href="/CV/manifest.json">
    <link rel="shortcut icon" href="/CV/favicon.ico">
    <title>Lorenzo Wijtman</title>
    <link href="/CV/static/css/main.1b15713e.css" rel="stylesheet">
</head>

<body>
    <noscript>You need to enable JavaScript to run this app.</noscript>
    <div id="root"></div>
    <script type="text/javascript" src="/CV/static/js/main.1b785adb.js"></script>
</body>

</html>

我的firebase.json内容

{
  "hosting": {
    "public": "build",
    "ignore": [
      "firebase.json",
      "**/.*",
      "**/node_modules/**"
    ],
    "rewrites": [
      {
        "source": "**",
        "destination": "/index.html"
      }
    ]
  }
}

1 个答案:

答案 0 :(得分:1)

您的HTML包含以下脚本:

<script type="text/javascript" src="/CV/static/js/main.30b4dcd1.js"></script>

如果您尝试加载此URL,则会看到您正在取回原始HTML而不是JavaScript文件。既然你告诉浏览器需要JavaScript,那就是抱怨尖括号。

您似乎没有部署/CV/static/js/main.30b4dcd1.js。由于您已告知Firebase托管将所有内容重写为/index.html,因此当网址没有匹配文件时,它会执行的操作。