解决Uncaught SyntaxError: Unexpected token <

2020-01-13 11:30:56

Uncaught SyntaxError: Unexpected token <

出现这样的问题,也没有报错信息,也没有网路访问信息,我是nuxt开发的vue,

查询下面的文档,我才发现,原来js的访问地址写错了,他访问不到这个文件,返回的是html,

哎,大家如果也发生了这个问题,注意检查一下自己的地址是否写对。

今天写代码的时候发现了"Uncaught SyntaxError: Unexpected token <" <html>的js错误,而且还是html的第一行,我就蒙了,这第一行有啥问题啊,还有一个“<”符号,我以为是我的网页标签没有闭包,所以检查了一下,都不是啊!错误如图。

QQ截图20170928135614.jpg

后来经过排查之后发现,这SyntaxError绝对是js错误!呵呵,到底错在哪儿呢?首先我检查了js的引入,发现有一行js引入错误了,幸好我挨个的点了,看看js是否能点开,是这样的。

<script type="text/javascript" src="/static/h-ui.admin/js/H-ui.admin.page.js"></script>

我发现上面这个js引入路径不能正常的点开,于是改成了正确的js路径,如下。

<script type="text/javascript" src="/asset/static/h-ui.admin/js/H-ui.admin.page.js"></script>

果然如此!再也没有报"Uncaught SyntaxError: Unexpected token <"错误了,完美解决!

我建议:如果引入路径都是正确的,那一定就是JavaScript方法有问题,然后检查方法是不是用了未定义的function之类的就ok了,容易吧!

 


  • 2017-07-17 14:48:15

    通过node.js保存emoji到mysql

    但是emoji通过utf-8编码后,每个字符占4个字节,属于宽字符。而老版本的mysql只支持一个字符占3个字节,所以老版本的mysql是无法存储emoji的。新版本的mysql增加了字符集utf8mb4,可以支持单字符最多占4个字节。utf8mb4是utf8的超集,可以无需修改地支持原来的utf8字符 要让mysql存储emoji,需要满足2个条件:

  • 2017-07-17 14:48:20

    通过node.js保存emoji到mysql

    但是emoji通过utf-8编码后,每个字符占4个字节,属于宽字符。而老版本的mysql只支持一个字符占3个字节,所以老版本的mysql是无法存储emoji的。新版本的mysql增加了字符集utf8mb4,可以支持单字符最多占4个字节。utf8mb4是utf8的超集,可以无需修改地支持原来的utf8字符 要让mysql存储emoji,需要满足2个条件:

  • 2017-07-17 17:05:03

    大白话讲解Promise(一)

    去年6月份, ES2015正式发布(也就是ES6,ES6是它的乳名),其中Promise被列为正式规范。作为ES6中最重要的特性之一,我们有必要掌握并理解透彻。本文将由浅到深,讲解Promise的基本概念与使用方法。

  • 2017-07-19 07:54:11

    Javascript中delete运算符

    Delete是Javascript语言中使用频率较低的操作之一,但是有些时候,当我们需要做delete或者清空动作时,就需要delete操作。在这篇文章中,我们将深入探讨如何使用它,以及它是如何工作的。

  • 2017-07-26 11:57:00

    Laravel 定时任务

    在 php 中使用定时器是一件不太简单的事情,之前大概只能通过 cron 来实现定时任务。但是在 Laravel5 中,定时任务将会变得很简单。