uni-app 小程序 pages.json 的 entryPagePath 配置不生效
uni-app 小程序 pages.json 的 entryPagePath 配置不生效
| 项目信息 | 详细信息 |
|---|---|
| 产品分类 | uniapp/小程序/微信 |
| PC开发环境操作系统 | Mac |
| PC开发环境操作系统版本号 | 10.15.7 |
| 第三方开发者工具版本号 | 1.05.2106250 |
| 基础库版本号 | 2.17.0 |
| 项目创建方式 | CLI |
| CLI版本号 | 4.5.8 |
操作步骤:
指定首页为index但打开小程序时首先展示login,以下是pages.json的配置
{
"easycom": {
"autoscan": true,
},
"entryPagePath": "pages/login/login",
"pages": [
{
"path": "pages/index/index",
"style": {
"navigationBarTitleText": "应急事件处理小程序"
}
},
{
"path": "pages/login/login",
"style": {
"navigationBarTitleText": "登录"
}
},
],
}
预期结果:
指定首页为index但打开小程序时首先展示login
实际结果:
指定首页为index但打开小程序时首先展示index
bug描述:
通过entryPagePath指定小程序的默认启动路径未生效,希望能支持此配置
更多关于uni-app 小程序 pages.json 的 entryPagePath 配置不生效的实战教程也可以访问 https://www.itying.com/category-93-b0.html
HBuilderX 3.7.0.20230118-alpha 已修复。
更多关于uni-app 小程序 pages.json 的 entryPagePath 配置不生效的实战教程也可以访问 https://www.itying.com/category-93-b0.html
pages数组中第一项表示应用启动页,参考:https://uniapp.dcloud.io/collocation/pages
entryPagePath 指定小程序的默认启动路径(首页),常见情景是从微信聊天列表页下拉启动、小程序列表启动等。如果不填,将默认为 pages 列表的第一项。不支持带页面路径参数。
回复 2***@qq.com: 终于遇见个明白人,但是貌似uni现在还没有解决这个问题.
后续更新
entryPagePath 对微信小程序成功,对 H5 失效
entryPagePath 配置在微信小程序中确实存在兼容性问题。根据微信官方文档,该配置仅对部分版本的基础库有效,且在不同小程序平台表现不一致。
解决方案:
- 调整 pages 数组顺序:将
pages/login/login移至pages数组首位:
"pages": [
{
"path": "pages/login/login",
"style": { "navigationBarTitleText": "登录" }
},
{
"path": "pages/index/index",
"style": { "navigationBarTitleText": "应急事件处理小程序" }
}
]
- 使用条件编译(如需平台差异化处理):
"pages": [
// #ifdef MP-WEIXIN
{"path": "pages/login/login", ...},
// #endif
{"path": "pages/index/index", ...}
]
- 路由拦截方案(推荐):
在
index页面的onLoad中判断登录状态,未登录时跳转至登录页:
// pages/index/index.vue
onLoad() {
if (!uni.getStorageSync('token')) {
uni.reLaunch({ url: '/pages/login/login' })
}
}

