解决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了,容易吧!

 


  • 2020-11-22 21:00:28

    dagger.android--Fragment,BaseFragment

    1 使用Fragment参数来代替Activity参数 2 使用 @FragmentKey来代替@ActivityKey 3 使用HasFragmentInjector来代替@HasActivityInjector 4 AndroidInjection.inject(Fragment)方法,在Fragment的onAttach()中调用,而不是在onCreate()中 5 Fragment的Module添加位置,和Activity是不同的,它取决于Fragment需要的其他依赖注入

  • 2020-11-22 21:12:30

    Dependency Injection with Dagger2,Fragment

    標註@Provides的method若有parameter的話,Dagger會找出其擁有的該型態物件來使用。我們在Module內新增了DataModel將其列入Dagger的管理下,接著在provideFactory()增加parameter變成provideFactory(DataModel dataModel),Dagger就會找出其管理的DataModel給provideFactory使用。

  • 2020-11-22 22:58:52

    Android LiveData Transformations

    有时候有这样的需求,需要在LiveData将变化的数据通知给观察者前,改变数据的类型;或者是返回一个不一样的LiveData。

  • 2020-11-22 23:00:16

    androidx中的lifecycle组件

    Lifecycle-aware components生命周期感知组件执行操作,以响应另一个组件生命周期状态的更改,例如Activity和Fragment。这些组件可以帮助您生成更有组织、更容易维护的轻量级代码。

  • 2020-11-22 23:02:50

    Android数据存储之DataBase的Room

    Room是Google在AndroidX中提供的一个ORM(Object Relational Mapping,对象关系映射)库。它是在SQLite上提供的一个抽象层,可以使用SQLite的全部功能,同时可以更好更便捷流畅地访问数据库。(关于AndroidX可以参考

  • 2020-11-22 23:04:39

    Android组件 LiveData与MutableLiveData教程

    LiveData与ViewMode是经常搭配在一起使用的,但是为了不太混乱,我还是拆分开来说明,此篇博客只讲解 LiveData 与 MutableLiveData的概念与使用方式(但是会涉及到ViewMode的部分代码).

  • 2020-11-22 23:14:52

    Dagger 2 在 Android 上的用法

    在前面的文章我们介绍了Dagger2 中的大部分注解的使用,接下来我们从源码角度分析下第一篇文章中例子的原理。

  • 2020-11-22 23:18:59

    Android开发从Dagger2迁移至Kodein的感受

    最近个人在尝试构建 Kotlin版本 的Android MVVM开发框架,在依赖注入框架的选型上,我最终选择了 Kodein 。这是一个非常轻量级的DI框架,相比于配置繁琐的Dagger(繁琐的配置也是导致Dagger学习成本一直居高不下的原因!),它的配置过程更清晰且简单,并且,这个库的源码也是 Kotlin 的。