vue的路由在默认的hash模式下,默认打包一般不会有什么问题,不过hash模式由于url会带有一个#,不美观,而且在微信分享,授权登录等都会有一些坑.所以history模式也会有一些应用场景.新手往往会碰到history模式打包后页面一片空白的情况,而且没有资源加载错误的报错信息.

这个其实仔细研究下会发现,如果项目直接放的跟目录, 那么是没有问题的,如果是子目录,那么就会一片空白了.这个vue官方有解释,需要加一个base

// base: '/history',

// mode: 'history',

这个base即为项目路径.

以上两个都解决了,还是会发现,此时只有首页能访问,通过首页点进去其他路由也是可以的,但是如果在其他路由刷新就有错误了,这个懂history模式的也应该知道,history模式是h5 api的 history.pushState,相对于是浏览器模拟了一条历史,而真正服务器上没有这个路径资源,为什么hash模式不存在这个问题呢?hash模式是带#,这个服务器不会解析,相对于还是返回html而已,index.html会根据vue路由去解析,而history模式则会请求服务器上的此地址,服务器上没有相关路径就会报错了,vue-router的官方文档有介绍各种配置,比如ngnix的配置

location / {

try_files $uri $uri/ /index.html;

}

上面这个对于直接项目的根目录是可以的,但是如果项目不是根目录还是会有问题,

location /history {

root C:/web/static;

index index.html index.htm;

#error_page 404 /history/index.html;

if (!-e $request_filename) {

rewrite ^/(.*) /history/index.html last;

break;

}

}

上面这个是项目路径名为history,这样配置后就不会有vue打包后页面空白问题了,history路由也可以自由访问了,不过要记得上面说的,非根目录的项目需要加上base 的路径

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

vue 打包路由报错_Vue下路由History模式打包后页面空白的解决方法相关推荐

  1. IDEA 报错红色下划线“cannot resolve”但仍能运行的解决方法

    看到很多说清理缓存重启的,重启之后还是会报错... 使用这个方法能有效解决. 安装Lombok (1)File -> Settings (2)搜索点击Plugins(插件) (3)再到左侧栏搜索 ...

  2. 【Keil MDK中工程报错Browse information of one of more files is not available解决方法】

    [Keil MDK中工程报错Browse information of one of more files is not available解决方法] 今天在进行工程编写时,出现了这个错误Browse ...

  3. python3运行报错:TypeError: Object of type ‘type‘ is not JSON serializable解决方法(详细)

    python3运行报错:TypeError: Object of type 'type' is not JSON serializable解决方法(详细) 参考文章: (1)python3运行报错:T ...

  4. nodejs连接mysql数据库,报错Client does not support authentication protocol requested by server的解决方法

    nodejs连接mysql数据库,报错Client does not support authentication protocol requested by server的解决方法 参考文章: (1 ...

  5. MyBatis多个接口参数报错:Available parameters are [0, 1, param1, param2], 及解决方法

    MyBatis多个接口参数报错:Available parameters are [0, 1, param1, param2], 及解决方法 参考文章: (1)MyBatis多个接口参数报错:Avai ...

  6. 安装thinkphp 报错Could not find package topthink/think with stability stable.的解决方法

    安装thinkphp执行命令 composer create-project topthink/think tp5 --prefer-dist 报错 [InvalidArgumentException ...

  7. MySQL无法启用/etc/my.cnf配置文件,重启报错Warning: World-writable config file ‘/etc/my.cnf’ is ignored的解决方法

    MySQL无法启用/etc/my.cnf配置文件,重启报错Warning: World-writable config file '/etc/my.cnf' is ignored的解决方法 问题分析 ...

  8. 【Git】Git commit至Gitee报错‘remote: error: hook declined to update refs/heads/master‘的解决方法

    Git commit至Gitee报错'remote: error: hook declined to update refs/heads/master'的解决方法 进入到Gitee的邮箱管理中,取消勾 ...

  9. 代码跳转路由报错_vue路由报错Navigating to current location (/login) is not allowed踩坑总结...

    .在我添加"未登录"判断后,想自动跳转到登录页.但是遇到了问题: Navigating to current location ("/login") is no ...

最新文章

  1. Matlab与数据结构 -- 搜索向量或矩阵中非零元素的位置
  2. 结构光|一文详解相移步长的选择问题
  3. python答案公众号_大学慕课用Python玩转数据答案查题公众号
  4. linux内核链表的使用
  5. warning C4996: 'strcpy': This function or variable may be unsafe. Consider using strcpy_s instead.
  6. 再谈拍照,OPPO这次拿什么和iPhone7拼?
  7. Android Tips – 填坑手册
  8. html带表单和div的素材,用DIV+CSSwe标准布局网页表单的一个例子
  9. msys2下用cmake构建poppler和libpng
  10. 空间换时间,轻松提高性能100倍
  11. 怎样清理苹果电脑磁盘空间_Mac空间不足怎么办,快速清理Mac系统垃圾与磁盘|Crucial(英睿达)...
  12. Numpy图解(三)--高维数组
  13. 怎么训练神经网络模型,神经网络模型训练过程
  14. 蓝牙4.0 OSAL层工作原理
  15. 分析游戏外挂样本的9大诀窍
  16. 大端模式和小端模式的详细区别
  17. 【性能测试】构造性能测试的数据
  18. mysql查询专业术语,英文术语MySQL查询
  19. pytorch框架下faster rcnn使用softnms
  20. Spring Cloud Alibaba微服务组件快速上手

热门文章

  1. 计算机基础,你知道蓝屏的原因吗
  2. 网络空间技术实验室:打造信息安全技术培育平台
  3. 新Rider预览版发布,对F#的支持是亮点
  4. [转]使用Navicat for Oracle工具连接oracle的
  5. Unity 通过Unity Admob Plugin插件集成admob教程
  6. Java中抽象类和接口在概念、语法和应用上的区别和关系
  7. 该Tiled地图制作拿到项目~~这是偷懒,为了直接复制后写来
  8. samba加入windows 2003域
  9. 最佳子集aic选择_AutoML的起源:最佳子集选择
  10. 计算机学院李世杰,有关办理2016级转专业学生相关手续通知