Skip to content
On this page

专属 H5 端特性

当将项目发布到 H5 端时,需要注意的是 uni-simple-router 在底层仍然使用的是 vue-router。uni-simple-router 只在 uni-app 与 vue-router 之间充当中间层的作用,以适配 uni-app 的特殊需求。

不同的历史模式

H5 端,uni-simple-router 在底层使用的是 vue-router,因此它支持几种不同的 导航历史模式 。然而,需要注意的是,uni-simple-router 并未提供在创建实例时直接配置导航历史模式的选项。相反,你可以通过在 manifest.json 文件中进行配置来设置导航历史模式。

manifest.json 文件中,你可以找到 h5 字段,并在其中配置 router 选项。该选项允许你指定导航历史模式。以下是一些常用的导航历史模式配置示例:

  • hash 模式(默认):
json
// manifest.json
"h5": {
  "router": {
    "mode": "hash"
  }
}

使用 hash 模式时,URL 中会以 # 符号作为路由路径的分隔符,例如 http://example.com/#/home

  • history 模式:
json
// manifest.json
"h5": {
  "router": {
    "mode": "history"
  }
}

使用 history 模式时,URL 中不会有 # 符号,而是直接使用正常的路径,例如 http://example.com/home

陷阱提示

  • 需要注意的是,使用 history 模式时,需要服务器进行相应的配置,以确保在刷新页面或直接访问路由时能够正确响应。你可以在这里找到详细的服务器配置

设置项目基础路径

H5 端,需要设置正确的基础路径。基础路径是指应用部署的根目录。你也可以通过在 manifest.json 文件中进行配置 base: '/your-base-path' 参数来设置基础路径。如果应用部署在域名的根目录下,则设置为 /

路由懒加载

在发布为 H5 端时,uni-simple-router 已经为路由懒加载做了相应的处理。它不会像传统的组件导入方式一样,将所有的组件都打包到 app.js 中。相反,它会智能地将每个组件打包成独立的 JavaScript 文件,在实际访问或解析组件时才会进行下载。

需要注意的是,由于异步组件的下载涉及网络和时间,下载的速度取决于你的网络环境。因此,你可能需要在组件首次加载时模拟一个顶部的加载进度条,以提供用户友好的体验。例如,在常见的后台管理系统框架中,点击左侧菜单时会显示一个加载条,等待右侧组件加载完成后自动消失。这种加载条只是一种优化手段,能够让用户在使用应用时感到更舒适。

通过 uni-simple-router 的路由懒加载,你可以避免一次性加载所有组件,从而提高应用的性能和加载速度。

请注意,加载条只是一种示例,你可以根据项目的实际需求采用不同的优化手段来提升用户体验。

专属 H5 端特性 has loaded