1, vue-router 路由 有两个模式 (mode)

  • hash (默认模式)

    使用URL来模拟一个完整的URL 但是没个URL都会带上 "#/'' 支持所有浏览器

    这个模式使用 redirect (重定向) 手动刷新页面会定到 第一个页面

  • history 模式

    history.pushState API 来完成 URL 跳转而无须重新加载页面 这个模式可去掉"#/"

    同时线上 (生成环境)需要后台配合把所有访问不到的资源路径后台重定向到 index.html

    后端配置例子

    https://router.vuejs.org/zh/guide/essentials/history-mode.html

  1. base 基础路径 默认为"/"

    整个单页应用服务在 /dist/ 下,然后base就应该设为"/dist/"。

  1. 打包生产环境 会生成 dist目录

    • 使用 hash 模式

      如果页面是空白的 可能是 config ->index build 对象中assetsPublicPath "/" 的问题 可设置为"./"

      "/" :表示 访问服务器根目录资源

      "./" 表示访问服务器当前目录的根目录资源

    • 如果使用 history 模式 如果只有样式 无HTML 内容

      那么 不仅仅 是assets PublicPath 问题

      还需进入dist 目录 全选打包 并放入 服务器访问的根目录解压 比如 Tomcat 就要放进 ROOT 目录中

      因为 只打包dist 文件夹 解压的时候会生成 dist文件夹

      而进入 dist 文件夹全选文件打包 解压时会生成对应文件

    • 如果 要使用 history 模式 并且不把前端资源包放到 服务器根目录下, 必须 配合 base 来使用

内容来源于网络如有侵权请私信删除
你还没有登录,请先登录注册
  • 还没有人评论,欢迎说说您的想法!