uni-app pages路由配置大小写问题导致热更新失效

uni-app pages路由配置大小写问题导致热更新失效

开发环境 版本号 项目创建方式
Mac 15.5 (24F74) CLI

产品分类:uniapp/H5

浏览器平台:Chrome
浏览器版本:Version 140.0.7339.133 (Official Build) (arm64)
CLI版本号:uni/3.0.0-4070520250711001 darwin-arm64 node-v23.10.0


示例代码:

import { defineConfig } from "vite";  
import uni from "@dcloudio/vite-plugin-uni";  
import tailwindcss from "@tailwindcss/vite";  

// https://vitejs.dev/config/  
export default defineConfig({  
  plugins: [uni.default(), tailwindcss()],  
});  

操作步骤:

pages.json中的配置如下

{  
    "path": "pages/admin/record",  
    "style": {  
        "navigationBarTitleText": "记录"  
    }  
}

实际的目录结构如下

└── admin  
    └── Record.vue

更多关于uni-app pages路由配置大小写问题导致热更新失效的实战教程也可以访问 https://www.itying.com/category-93-b0.html

3 回复

你要说建议优化可以,但这并不能算bug,JavaScript就是大小写敏感的

更多关于uni-app pages路由配置大小写问题导致热更新失效的实战教程也可以访问 https://www.itying.com/category-93-b0.html


如果是大小写敏感,路由配置错误就应该是404,无法识别路由。 现在的问题是路由逻辑和热更新逻辑没有统一

这是一个典型的文件路径大小写不匹配问题。在pages.json中配置的路由路径是"pages/admin/record",但实际的文件路径是admin/Record.vue

问题分析:

  1. 路径大小写敏感:虽然macOS文件系统默认不区分大小写,但uni-app的路由解析在某些情况下对路径大小写是敏感的
  2. 热更新失效:当pages.json中的路径与实际文件路径大小写不一致时,开发服务器的文件监听可能无法正确匹配,导致热更新失效

解决方案: 将pages.json中的配置改为与实际文件路径一致的大小写:

{
    "path": "pages/admin/Record",
    "style": {
        "navigationBarTitleText": "记录"
    }
}
回到顶部