目录
  • 问题:
  • 一、public下的index.html没有引入其他外部js文件。
  • 二、 public下的index.html引入其他外部js文件。
    • 原因一.引用文件的位置不正确
    • 原因二:配置信息不正确
    • 原因三:script的引入类型不对
  • 总结

    问题:

    最近做vue项目时,当我访问二级路由的时候,就会报Uncaught SyntaxError: Unexpected token ‘<‘错误,而我访问一级路由不会报错。翻了网上很多资料,都无法解决。

    一、public下的index.html没有引入其他外部js文件。

    Vue项目报错:Uncaught SyntaxError: Unexpected token '<'的解决方法

    解决方法:清除浏览器缓存。

    Vue项目报错:Uncaught SyntaxError: Unexpected token '<'的解决方法

    二、 public下的index.html引入其他外部js文件。

    原因一.引用文件的位置不正确

    js文件放在static文件夹下和放在assets文件夹下的引用方式是不一样的。简而言之:

       1.assets用来放置样式、静态图片,只要src下面的组件中用到的资源就放在assets中。

       2.static用来放没有npm包的第三方插件,字体文件。

       3.assets与components同级  components下的.vue引用静态文件时,相对路径为 ../assets/xxx/……

       说明:如果js文件中包含es6语法的话,就不可以放在static文件夹下,因为static文件夹默认是不会被打包和编译的,所以引用的时候会抛异常。

    不同之处可以查看这篇博客:https://www.cnblogs.com/huangqiao/p/7798887.html

    解决方法:

    将src下的文件放到static下面去,在indec.html中的引用路径采用相对路径的表现形式,“./static/xxx/xxxxx.js”

    原因二:配置信息不正确

    如果你的js文件中包含es6语法,但没有配置采用babel-loader来解析和转化为es5语法的话,也会报这个错误。

    解决方法:

    需要在webpack.config.js里配置loader,vue-cli是不会帮忙配置的。

    Vue项目报错:Uncaught SyntaxError: Unexpected token '<'的解决方法

    然后重新编译项目,就可以解决,当然这个也没有解决我的问题。

    原因三:script的引入类型不对

    解决办法:将type="text/javascript"改为type="text/babel"

    我尝试了,不会再报以上错误,但是我引入的JS文件中的内容却没有编译成功,里面的方法依然无法使用。

    总结

    声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。