uni-app 修改为history后井号依然存在

uni-app 修改为history后井号依然存在

开发环境 版本号 项目创建方式
Mac 12.1 HBuilderX
产品分类:uniapp/App

PC开发环境操作系统:Mac

PC开发环境操作系统版本号:12.1

HBuilderX类型:正式

HBuilderX版本号:3.2.16

手机系统:全部

手机厂商:华为

页面类型:vue

vue版本:vue2

打包方式:云端

App下载地址或H5网址:[https://test.zjiay.com](https://test.zjiay.com)

测试过的手机:H5

操作步骤:
- 打包后出现

预期结果:
- https://test.zjiay.com/

实际结果:
- https://test.zjiay.com/#/

bug描述:
h5导出,将manifest.json修改为history模式,
并且nginx加入了try_files $uri $uri/ /index.html;
链接中的#号依然存在。

更多关于uni-app 修改为history后井号依然存在的实战教程也可以访问 https://www.itying.com/category-93-b0.html

5 回复

问题已解决。

更多关于uni-app 修改为history后井号依然存在的实战教程也可以访问 https://www.itying.com/category-93-b0.html


求教怎么解决的。

求问怎么解决的

求问,怎么解决的

在 uni-app 的 H5 项目中,将路由模式从 hash 切换为 history 后,URL 中的井号(#)依然存在,这通常是由于配置未完全生效或缓存导致的。根据你的描述,你已经修改了 manifest.json 并配置了 Nginx,但问题仍然出现。以下是一些排查步骤和解决方案:

  1. 确认配置正确性

    • manifest.jsonh5 节点下,确保已设置 routermodehistory。示例配置如下:
      "h5": {
        "router": {
          "mode": "history"
        }
      }
      
    • 修改后,重新编译并打包 H5 项目,确保新配置生效。在 HBuilderX 中,可以尝试清理项目(菜单栏:运行 -> 清理项目)后再重新发行。
  2. 检查 Nginx 配置

    • 你的 Nginx 配置 try_files $uri $uri/ /index.html; 是正确的,但请确保它位于正确的 location 块中。通常配置如下:
      location / {
          try_files $uri $uri/ /index.html;
      }
回到顶部