首页 > 解决方案 > 在 Javascript 中出现“意外令牌”错误

问题描述

我想先介绍一下背景,我在使用 NextJS 的 SSR React 中遇到了以下问题。在我<head><script></script>标签中,我有多个<script>标签嵌套,其中包含用于 Google Analytics、Adobe Analytics 等的缩小 JS 代码。为了调试问题,我尝试将其分解更多,并且一次只在我的外部<script>标签中包含一个 JS 代码就像只有 GA 或只有 Adob​​e 才能看到它在哪里崩溃。

当我使用<noscript>标签时它工作正常,在它里面,我有多个<script>标签,其中包含 GA、AA 等的缩小 JS。但这打破了我的目的,因为当页面加载时谷歌标签助手没有捕捉到标签。

令我惊讶的是,当我尝试在隐身模式下运行一个简单的 JS 代码(PSB SS)时(只是为了确保没有任何扩展/插件的普通浏览器配置文件)我得到了同样的错误。即使我尝试不使用隐身模式,对于这个简单的 JS 代码,我也会遇到同样的错误。

Uncaught SyntaxError: Unexpected token '<'

这里有什么问题,为什么我会收到这个错误?

在此处输入图像描述

标签: javascriptreactjsgoogle-chromesyntax-errorserver-side-rendering

解决方案


Java 脚本属于<script>标签内部,但<script>标签本身是 HTML,因此它们不是预期的,这就是您获得Unexpected < token.

换句话说,不要嵌套<script>标签。删除最外面的标签应该可以修复错误。


推荐阅读