三、uni-app页面配置(pages.json)
一、核心配置页面uni-app 的 pages.json是 uni-app 项目里最核心的配置文件堪称整个应用的“大脑和地图”。它负责告诉应用有哪些页面、页面在哪里、页面长什么样、如何跳转。配置字段作用描述实际开发举例pages页面路由配置。注册应用的所有页面数组的第一项就是应用的启动首页。配置首页path: pages/index/index并设置标题navigationBarTitleText: 首页。globalStyle全局窗口样式。设置所有页面默认的导航栏样式、背景色等。设置全局导航栏背景为白色navigationBarBackgroundColor: #ffffff。tabBar底部导航栏配置。设置原生体验的底部多 Tab 切换图标、文字、对应页面。配置底部的“首页”、“发现”、“我的”三个 Tab 及对应的图标。subPackages分包加载配置。将大型应用拆分为多个子包优化首次加载速度H5 不支持。将“商城模块”独立为一个分包root: pages-mall按需加载。easycom组件自动引入规则。配置后无需手动 import 和注册组件直接在页面使用。配置后直接在页面写uni-badge/uni-badge就能自动识别。condition启动模式配置。仅在开发阶段生效用于模拟直达某个页面方便调试。开发时直接启动到“商品详情页”不用每次都从首页点进去。二、示例{// 1. pages页面路由配置应用骨架// 数组的第一项就是应用的启动首页。这里配置的是主包页面。pages:[{path:pages/index/index,style:{navigationBarTitleText:好物商城,navigationBarBackgroundColor:#FF5722,navigationBarTextStyle:white}},{path:pages/category/category,style:{navigationBarTitleText:商品分类}},{path:pages/cart/cart,style:{navigationBarTitleText:购物车}},{path:pages/my/my,style:{navigationBarTitleText:个人中心,enablePullDownRefresh:true}}],// 2. globalStyle全局样式配置默认皮肤// 定义所有页面默认的窗口表现。如果某个页面需要特殊样式可以在 pages 里的 style 中覆盖。globalStyle:{navigationBarTextStyle:black,navigationBarTitleText:我的小店,navigationBarBackgroundColor:#FFFFFF,backgroundColor:#F8F8F8,enablePullDownRefresh:false,onReachBottomDistance:50},// 3. tabBar底部导航栏配置// 依赖前面的 pages 路径配置底部多 Tab 切换。tabBar:{color:#909399,selectedColor:#FF5722,backgroundColor:#FFFFFF,borderStyle:black,list:[{pagePath:pages/index/index,text:首页,iconPath:static/tabbar/home.png,selectedIconPath:static/tabbar/home-active.png},{pagePath:pages/category/category,text:分类,iconPath:static/tabbar/category.png,selectedIconPath:static/tabbar/category-active.png},{pagePath:pages/cart/cart,text:购物车,iconPath:static/tabbar/cart.png,selectedIconPath:static/tabbar/cart-active.png},{pagePath:pages/my/my,text:我的,iconPath:static/tabbar/my.png,selectedIconPath:static/tabbar/my-active.png}]},// 4. subPackages分包加载配置// 将大型应用拆分减少主包体积加快首次加载速度。// 这里把“订单模块”独立为一个分包只有用户进入订单相关页面时才会下载。subPackages:[{root:sub_packages/order,pages:[{path:orderList/orderList,style:{navigationBarTitleText:我的订单}},{path:orderDetail/orderDetail,style:{navigationBarTitleText:订单详情}}]}],// 5. easycom组件自动引入规则// 优化开发体验。配置后只要组件放在 components 目录下// 就可以直接在页面里使用无需手动 import 和注册。easycom:{autoscan:true,custom:{^uni-(.*):/components/uni-$1.vue}},// 6. condition启动模式配置// 仅在开发期间生效用于模拟直达某个页面的场景方便调试。// 上线前通常会被忽略放在最后面不会干扰核心业务代码的阅读。condition:{current:0,list:[{name:直接打开订单列表,path:sub_packages/order/orderList/orderList,query:status1}]}}三、pagespages 是整个应用最核心的配置项相当于应用的“骨架”它是一个数组里面包含了你应用的所有页面信息。1. 属性path必填页面的路径。相当于告诉应用这个页面放在哪个文件夹里。实战注意路径不需要写.vue后缀比如写成pages/index/index即可。style可选页面的窗口样式配置。用来设置当前页面的导航栏标题、背景色、是否支持下拉刷新等。实战注意这里的配置优先级高于全局的globalStyle。如果全局是白色背景你在style里配置了蓝色这个页面就会显示蓝色。needLogin可选标识该页面是否需要登录后才能访问。默认是false如果设为true未登录用户访问时会被拦截。2. style属性属性名类型作用描述实际开发举例navigationBarBackgroundColorHexColor导航栏背景颜色设置为红色主题#FF5722navigationBarTextStyleString导航栏标题及状态栏前景颜色仅支持black/white浅色背景配黑色文字blacknavigationBarTitleTextString导航栏标题文字内容navigationBarTitleText: 商品详情navigationStyleString导航栏样式支持default默认或custom自定义设为custom可隐藏原生导航栏自己写一个炫酷的头部backgroundColorHexColor窗口的背景色下拉时露出的底色下拉时露出灰色背景#F8F8F8enablePullDownRefreshBoolean是否开启当前页面的下拉刷新功能列表页设为true详情页设为falsebackgroundTextStyleString下拉 loading 的样式仅支持dark/light深色背景下拉刷新用lightonReachBottomDistanceNumber页面上拉触底事件触发时距页面底部的距离单位px设为50用于实现列表无限滚动加载3. 实战避坑小贴士首页的诞生pages数组里的第一项就是整个应用的启动页首页。无论你给它起什么名字只要它排在第一位它就是老大。必须注册所有业务页面都必须在这里注册。如果你在文件夹里新建了一个页面但没有在pages数组里添加它这个页面在编译时会被直接忽略无法访问。四、globalStyleglobalStyle用于配置整个应用所有页面的默认窗口表现可以理解为应用的“默认皮肤”。1. 属性属性名类型作用描述实际开发举例navigationBarBackgroundColorHexColor全局导航栏的背景颜色设置全局统一的主题色#007AFFnavigationBarTextStyleString全局导航栏标题及状态栏前景颜色仅支持black/white默认使用黑色文字blacknavigationBarTitleTextString全局默认的导航栏标题文字比如统一叫我的应用navigationStyleString全局导航栏样式支持default默认或custom自定义设为custom时所有页面默认隐藏原生导航栏backgroundColorHexColor全局窗口的背景色下拉刷新时露出的底色统一设置为#F8F8F8enablePullDownRefreshBoolean是否全局开启下拉刷新功能默认设为false需要时再在单页style中开启backgroundTextStyleString下拉 loading 的样式仅支持dark/light配合深色背景使用lightonReachBottomDistanceNumber全局上拉触底事件触发时距页面底部的距离单位px统一设为50方便处理列表触底加载五、tabBartabBar用于配置应用底部的多 Tab 导航栏。它包含全局样式属性和页面列表list两大部分。1. 全局样式属性这些属性控制整个底部导航栏的外观表现属性名类型作用描述实际开发举例colorHexColorTab 上文字/图标的默认未选中颜色设置为灰色#999999selectedColorHexColorTab 上文字/图标的选中颜色设置为主题色#FF5722backgroundColorHexColor底部导航栏的背景颜色设置为白色#FFFFFFborderStyleString导航栏上边框的颜色仅支持black/white默认使用blackpositionStringTabBar 的位置默认bottom可选top放在底部bottom2. 页面列表list 数组这是 tabBar 的核心是一个数组包含了每一个底部导航项的具体配置。属性名类型作用描述实际开发举例pagePathString页面路径。必须在pages数组中先定义过pages/index/indextextStringTab 上显示的文字标签首页iconPathString未选中时的图标路径必须放在static目录下static/tabbar/home.pngselectedIconPathString选中时的图标路径必须放在static目录下static/tabbar/home-active.png3. 实战避坑小贴士数量限制list数组最少配置 2 个最多配置 5 个 Tab。图标路径铁律iconPath和selectedIconPath必须使用本地相对路径并且图片必须存放在项目的static目录下。千万不要使用网络图片或/static别名否则小程序端会无法解析。暗黑模式适配如果你需要支持暗黑模式DarkModetabBar里的颜色属性如color、backgroundColor和图标路径iconPath都支持通过符号引用theme.json中定义的变量从而实现一键切换深浅主题。跳转方式一旦使用了tabBar在代码中跳转这些页面时不能使用普通的uni.navigateTo必须使用uni.switchTab方法。六、subPackagessubPackages分包加载配置是优化小程序体积、提升首次启动速度的核心利器。它主要包含分包基础配置、分包预加载策略以及分包优化开关三个核心部分。1. 分包基础配置 (subPackages)这是分包的核心节点它是一个数组数组中的每一项代表一个独立的子包。属性名类型作用描述实际开发举例rootString子包的根目录必填。主包和分包不能在同一目录下。将订单模块独立分包root: pagesApagesArray子包由哪些页面组成必填。这里的path是相对于root的相对路径。包含订单列表页path: list/listnameString分包别名选填。可用于预加载配置。name: packageApluginsObject在分包内引入的插件代码包选填。仅微信小程序支持且同一插件不能被多个分包同时引用。配置特定分包使用的微信插件。2. 分包预加载策略 (preloadRule)为了提升用户体验避免用户点击分包页面时长时间等待可以配置预加载策略。当用户进入某个页面时框架会自动预下载可能需要的分包。属性名类型作用描述实际开发举例keyString触发预下载的页面路径。pages/index/index进入首页时触发packagesStringArray进入该页面后需要预下载的分包root或name必填。[pagesA, pagesB]networkString指定在何种网络下预下载选填。可选all不限网络或wifi仅WiFi。network: wifi3. 分包优化开关 (manifest.json)除了pages.json中的配置还需要在manifest.json中开启分包优化才能让静态资源和 JS 文件真正放入分包内从而减小主包体积。配置位置作用描述实际开发举例mp-weixin-optimization-subPackages开启微信小程序的分包优化。optimization: {subPackages: true}4. 实战避坑小贴士体积限制微信小程序主包最大不超过 2MB单个分包最大不超过 2MB整个项目主包所有分包总大小不超过 20MB。资源隔离原则静态文件分包目录下放置的static静态资源不会被打包到主包中且不可在主包中使用。JS 文件当某个 JS 文件仅被这一个分包引用时它会被打包进分包如果被主包或多个分包同时引用它依然会被打包到主包中。最佳实践将启动页、TabBar 页面等高频访问的页面放在主包将设置、帮助、订单详情等次要功能放入分包。七、easycomeasycom是一种组件自动引入机制它能让你告别繁琐的 import 和 components 注册步骤直接在页面中使用组件。1. 核心配置项总结属性名类型默认值作用描述实际开发举例autoscanBooleantrue是否开启自动扫描功能。开启后框架会自动扫描符合默认目录规范的组件并注册。保持默认的true组件放在components/组件名/组件名.vue即可自动识别。customObject{}自定义匹配规则。当你的组件路径或命名不符合默认规范时可以使用正则表达式进行自定义映射。将^my-(.*)映射到/components/my/$1.vue这样使用my-button时就会自动找到对应文件。2. 实战避坑小贴士默认规范autoscan 的底层逻辑只要你的组件安装在项目的components目录或uni_modules目录下并且严格符合components/组件名称/组件名称.vue的目录结构就可以免注册直接使用。自定义规则custom 的语法custom的键Key是组件标签名的正则表达式值Value是组件文件的路径模板。例如你有一个组件放在src/components/common/button.vue想通过app-button使用可以配置为^app-(.*):src/components/common/$1.vue命名规范组件命名必须是小写字母并使用短横线kebab-case连接单词例如my-component。性能优势不管components目录下安装了多少组件easycom在打包后会自动剔除没有使用的组件实现真正的“按需打包”对包体积优化非常友好。修改配置不热更新考虑到编译速度直接在pages.json内修改easycom配置通常不会触发重新编译你需要稍微改动一下页面内容才能触发更新。八、conditioncondition被称为启动模式配置。它仅在开发期间生效打包上线后没有任何作用。它的核心作用是模拟直达某个深层页面的场景例如小程序转发后用户点击打开的页面。在开发时你可以省去从首页一层层点击跳转的麻烦直接启动到目标页面进行调试。1. 核心配置项总结属性名类型是否必填作用描述实际开发举例currentNumber是当前激活的模式。值为list数组中节点的索引值从 0 开始。设为0表示启动时激活list中的第一个配置模式。listArray是启动模式列表。包含一个或多个启动模式的对象。配置一个直达“商品详情页”的启动模式。2. list 数组内部配置项list数组里的每一项都是一个对象包含以下属性属性名类型是否必填作用描述实际开发举例nameString是启动模式的名称。name: 商品详情页pathString是启动页面的路径必须是已注册的页面。path: pages/detail/detailqueryString否启动参数。在目标页面的onLoad生命周期函数中获取。query: id10status13. 实战避坑小贴士不同平台的生效方式在 App 真机运行时配置后运行项目会自动直接打开配置的页面。在微信小程序开发者工具中配置后你需要在开发者工具顶部的“编译模式”下拉框中手动选择对应的模式如“商品详情页”才会生效。参数接收如果你在query中配置了id10status1记得在目标页面的script中通过onLoad((option) { console.log(option.id) })来接收这些参数。上线前清理因为condition纯粹是为了开发调试建议在项目上线打包前将这段配置注释掉或删除保持pages.json的整洁。

相关新闻

Windows 11 系统清理指南:如何用 10 分钟去除预装软件和广告

Windows 11 系统清理指南:如何用 10 分钟去除预装软件和广告

Windows 11 系统清理指南:如何用 10 分钟去除预装软件和广告 【免费下载链接】Win11Debloat A simple, lightweight PowerShell script that allows you to remove pre-installed apps, disable telemetry, as well as perform various other changes to declutter …

2026/8/21 15:31:41 阅读更多 →
把《骑马与砍杀2》变成终极多人联机:BannerlordCoop完整上手指南

把《骑马与砍杀2》变成终极多人联机:BannerlordCoop完整上手指南

把《骑马与砍杀2》变成终极多人联机:BannerlordCoop完整上手指南 【免费下载链接】BannerlordCoop 项目地址: https://gitcode.com/gh_mirrors/ba/BannerlordCoop 你在语音里喊"我刚打下了库赛特的城!",朋友却在另一头回一…

2026/8/20 12:53:19 阅读更多 →
CAD Sketcher 完整上手指南:6个步骤在Blender中绘制约束驱动的精准2D草图

CAD Sketcher 完整上手指南:6个步骤在Blender中绘制约束驱动的精准2D草图

CAD Sketcher 完整上手指南:6个步骤在Blender中绘制约束驱动的精准2D草图 【免费下载链接】CAD_Sketcher Constraint-based geometry sketcher for blender 项目地址: https://gitcode.com/gh_mirrors/ca/CAD_Sketcher CAD Sketcher 是一款运行在 Blender 中…

2026/8/20 12:53:19 阅读更多 →

最新新闻

Seraphine 英雄联盟战绩查询工具:战绩秒查,BP 阶段自动代选

Seraphine 英雄联盟战绩查询工具:战绩秒查,BP 阶段自动代选

Seraphine 英雄联盟战绩查询工具:战绩秒查,BP 阶段自动代选 【免费下载链接】Seraphine 英雄联盟战绩查询工具 项目地址: https://gitcode.com/gh_mirrors/se/Seraphine 如果你也是打完一把就想查队友战绩、却要切出去开网页的英雄联盟玩家&#…

2026/8/21 17:00:53 阅读更多 →
室内空气质量监测实战:zigbee_home+SCD4x CO2传感器接入完整指南

室内空气质量监测实战:zigbee_home+SCD4x CO2传感器接入完整指南

室内空气质量监测实战:zigbee_homeSCD4x CO2传感器接入完整指南 【免费下载链接】zigbee_home Project to provide functionality similar to ESPHome but for Zigbee instead of WiFi for nRF52, nRF53 & nRF54L 项目地址: https://gitcode.com/gh_mirrors/z…

2026/8/21 17:00:53 阅读更多 →
USB集线器选购全攻略:0-50元预算避坑指南与实战解析

USB集线器选购全攻略:0-50元预算避坑指南与实战解析

在实际项目开发、日常办公或家庭娱乐场景中,我们经常会遇到电脑接口不够用的问题。无论是轻薄本为了追求极致便携而牺牲了接口数量,还是台式机前置面板接口老化、速度慢,一个稳定可靠的USB集线器(HUB)或扩展坞都能有效…

2026/8/21 17:00:53 阅读更多 →
当 128G 的 U 盘只装得下 32G 数据:用 F3 闪存测试工具给存储设备做一次诚实体检

当 128G 的 U 盘只装得下 32G 数据:用 F3 闪存测试工具给存储设备做一次诚实体检

当 128G 的 U 盘只装得下 32G 数据:用 F3 闪存测试工具给存储设备做一次诚实体检 【免费下载链接】f3 F3 - Fight Flash Fraud 项目地址: https://gitcode.com/gh_mirrors/f3/f3 周五晚上,你把刚写完的论文初稿拖进新买的“128G”U盘,…

2026/8/21 17:00:53 阅读更多 →
视频卡顿拖垮创作?Hap QuickTime Codec 用 GPU 硬件加速把编解码等待变成历史

视频卡顿拖垮创作?Hap QuickTime Codec 用 GPU 硬件加速把编解码等待变成历史

视频卡顿拖垮创作?Hap QuickTime Codec 用 GPU 硬件加速把编解码等待变成历史 【免费下载链接】hap-qt-codec A QuickTime codec for Hap video 项目地址: https://gitcode.com/gh_mirrors/ha/hap-qt-codec 凌晨两点,一场现场演出的视频素材还在渲…

2026/8/21 17:00:52 阅读更多 →
免费开源动态壁纸软件Lively Wallpaper使用指南:5分钟让Windows桌面活起来

免费开源动态壁纸软件Lively Wallpaper使用指南:5分钟让Windows桌面活起来

免费开源动态壁纸软件Lively Wallpaper使用指南:5分钟让Windows桌面活起来 【免费下载链接】lively Free and open-source software that allows users to set animated desktop wallpapers and screensavers powered by WinUI 3. 项目地址: https://gitcode.com/…

2026/8/21 16:59:51 阅读更多 →

日新闻

机场边检旅客定位系统国产化白皮书:算法、硬件、底座平台全程自主

机场边检旅客定位系统国产化白皮书:算法、硬件、底座平台全程自主

前言随着国家数字基础设施信创替代、关键技术自主可控战略持续深化,口岸智慧安防、边检智能管控领域正全面进入国产化、自主化、安全可控升级周期。当前国内机场边检旅客识别与定位体系长期依赖国外商用视觉算法、进口成像硬件、闭源通用计算平台,存在核…

2026/8/21 0:00:42 阅读更多 →
别再把“数字孪生”当空间智能了!镜像视界揭开四维时空的真正面纱

别再把“数字孪生”当空间智能了!镜像视界揭开四维时空的真正面纱

别再把“数字孪生”当空间智能了!镜像视界揭开四维时空的真正面纱当下数字化建设浪潮中,很多项目将三维可视化、视频贴图叠加的数字孪生等同于空间智能。传统数字孪生更多停留在三维场景复刻,擅长把物理世界“画出来、展示出来”,…

2026/8/21 0:00:42 阅读更多 →
105、车载温度范围-40°C到85°C的影像质量一致性——ISP参数温漂补偿与产线标定策略

105、车载温度范围-40°C到85°C的影像质量一致性——ISP参数温漂补偿与产线标定策略

105、车载温度范围-40C到85C的影像质量一致性——ISP参数温漂补偿与产线标定策略 去年冬天在北方某车厂做A样评审,凌晨四点的黑河试验场,零下三十三度。客户拿了一台冷启动的车,中控屏上倒车影像全是雪花噪点,暗部细节直接糊成一片。我第一反应是sensor温度没上来,暗电流…

2026/8/21 0:00:42 阅读更多 →

周新闻

基于阿里云与通义千问(Qwen)构建AI应用:从模型调用到生产部署的完整实践指南

基于阿里云与通义千问(Qwen)构建AI应用:从模型调用到生产部署的完整实践指南

如果你是一名开发者,最近可能已经感受到了AI大模型正在从“玩具”变成“生产力工具”的强烈信号。从代码补全到智能Agent,从本地部署到云端API,我们正处在一个技术栈快速重构的节点。然而,面对层出不穷的模型、框架和工具&#xf…

2026/8/21 3:21:33 阅读更多 →
工业通信系统底层逻辑:04 反射——高频能量撞墙之后会发生什么?

工业通信系统底层逻辑:04 反射——高频能量撞墙之后会发生什么?

第四篇:反射——高频能量撞墙之后会发生什么? —— 你以为信号已经过去了,其实它正在回来打你 老Q的现场笔记 第五季,我们正式进入工业神经系统层。这里不再是单个设备的战斗,而是整个工厂“经脉”层面的秩序之战。从这一篇开始,你将第一次看清:看似简单的信号传播,背…

2026/8/21 0:02:09 阅读更多 →
【文章复现】非线性值迭代自适应动态规划(ADP):离散时间非线性系统的策略迭代自适应动态规划算法研究附Matlab代码

【文章复现】非线性值迭代自适应动态规划(ADP):离散时间非线性系统的策略迭代自适应动态规划算法研究附Matlab代码

✅作者简介:热爱科研的Matlab仿真开发者,擅长毕业设计辅导、数学建模、数据处理、建模仿真、程序设计、完整代码获取、论文复现及科研仿真。🍎 往期回顾关注个人主页:Matlab科研工作室👇 关注我领取海量matlab电子书和…

2026/8/21 6:07:56 阅读更多 →

月新闻

免费解锁百度网盘SVIP加速:macOS用户必备的下载提速终极指南

免费解锁百度网盘SVIP加速:macOS用户必备的下载提速终极指南

免费解锁百度网盘SVIP加速:macOS用户必备的下载提速终极指南 【免费下载链接】BaiduNetdiskPlugin-macOS For macOS.百度网盘 破解SVIP、下载速度限制~ 项目地址: https://gitcode.com/gh_mirrors/ba/BaiduNetdiskPlugin-macOS 还在为百度网盘macOS版的龟速下…

2026/8/21 16:42:28 阅读更多 →
终极ncmdump指南:3分钟实现网易云NCM音乐解密与格式转换

终极ncmdump指南:3分钟实现网易云NCM音乐解密与格式转换

终极ncmdump指南:3分钟实现网易云NCM音乐解密与格式转换 【免费下载链接】ncmdump 项目地址: https://gitcode.com/gh_mirrors/ncmd/ncmdump 还在为网易云音乐下载的NCM格式文件无法在其他播放器播放而烦恼吗?ncmdump解密工具帮你轻松解决这个困…

2026/8/20 21:46:49 阅读更多 →
HarmonyOS 应用开发《掌上英语》第81篇: 智能体卡片:为英语学习 App 打造桌面级学习助手

HarmonyOS 应用开发《掌上英语》第81篇: 智能体卡片:为英语学习 App 打造桌面级学习助手

AgentCard 智能体卡片:为英语学习 App 打造桌面级学习助手适用平台:HarmonyOS 7.0 (API 26 Beta)一、引言 HarmonyOS 7.0(API 26 Beta)新增了 AgentCard 智能体卡片能力,这是继 HMAF(鸿蒙智能体框架&#x…

2026/8/21 0:14:22 阅读更多 →