在使用vue搭建运行一个项目时,碰到一个奇怪的问题,从首页跳到二级页面的话页面能正常显示,但是在二级页面里刷新的时候页面就白屏了,然后在控制台中发现有报错: Uncaught SyntaxError: Unexpected token '<' (at app.js:1:1) <!DOCTYPE html>。比如访问:http://127.0.0.1:4567/ 正常,从这个页面跳转到: http://127.0.0.1:4567/article/128 时也正常,但是在这个 http://127.0.0.1:4567/article/128 页面刷新时就不正常了。我的项目使用的是history模式。本文地址:http://www.04007.cn/article/1145.html,未经许可,不得转载.
然后认真查看了一下页面的源代码,发现在二级页面刷新的时候加载的app.js路径不对,跟着二级页面的路由地址去寻找子目录下的app.js文件导致的。应该使用history模式在子路由刷新页面的话,主动引入的文件会以当前最终级路由的路径作为相对路径找。可以试着换路由模式,不过更好的方法是修改配置。本文地址:http://www.04007.cn/article/1145.html,未经许可,不得转载.
修改webpack.base.config.js 中build项的assetsPublicPath,将其设置为绝对路径,然后需要重新启动项目。本文地址:http://www.04007.cn/article/1145.html,未经许可,不得转载.
assetsPublicPath: '/'本文地址:http://www.04007.cn/article/1145.html 未经许可,不得转载. 手机访问本页请扫描右下方二维码.
![]() |
![]() |
手机扫码直接打开本页面 |