当前位置: 首页 > article >正文

小程序学习05——uniapp路由和菜单配置

目录

一、路由

二、如何管理页面及路由?

三、pages.json 页面路由

四、 tabBar


一、路由

路由:在前端,往往指代用不同地址请求不同页面,决定了用户如何在应用的不同页面之间导航。

菜单:对于每个路径(路由),跳转

二、如何管理页面及路由?

uniapp管理路由的方式:pages.json维护,框架统一管理。

uni-app 通过 pages 节点配置应用由哪些页面组成,pages 节点接收一个数组,数组每个项都是一个对象,其属性值如下:

 path: String类型,用于配置页面路径,(路由)
 style: Object类型,用于配置页面窗口表现,配置项参考uniapp中pageStyle,(样式)
 needLogin:Boolean类型 默认false,表示是否需要登录才可访问

Tips:

  • pages节点的第一项为应用入口页(即首页)

  • 应用中新增/减少页面,都需要对 pages 数组进行修改

  • 文件名不需要写后缀,框架会自动寻找路径下的页面资源

代码示例:

开发目录为:

┌─pages
│  ├─index
│  │  └─index.vue
│  └─login
│     └─login.vue
├─static
├─main.js
├─App.vue
├─manifest.json
└─pages.json

三、pages.json 页面路由

pages.json 文件用来对 uni-app 进行全局配置,决定页面文件的路径、窗口样式、原生的导航栏、底部的原生tabbar 等。

导航栏高度为 44px (不含状态栏),tabBar 高度为 50px (不含安全区)。

它类似微信小程序中app.json页面管理部分。注意定位权限申请等原属于app.json的内容,在uni-app中是在manifest中配置。

pages.json文件中页面路由部分代码示意如下 :

"pages": [ //pages数组中第一项表示应用启动页,参考:https://uniapp.dcloud.io/collocation/pages
	{
		"path": "pages/index/index",
		"style": {
			"navigationBarTitleText": "uni-app"
		}
	},
	{
		"path": "pages/order/index",
		"style": {
			"navigationBarTitleText": "",
			"navigationBarBackgroundColor": "#FFFFFF"
		}
	},
	{
		"path": "pages/user/index",
		"style": {
			"navigationBarTitleText": "",
			"navigationBarBackgroundColor": "#FFFFFF"
		}
	}
]

四、 tabBar

如果应用是一个多 tab 应用,可以通过 tabBar 配置项指定一级导航栏,以及 tab 切换时显示的对应页。

代码示例

"tabBar": {
	"color": "#535353",  //字体颜色
	"selectedColor": "#0bb584",  //选中的颜色
	"borderStyle": "white",   //边框(默认为黑色(black)
	"backgroundColor": "#ffffff",
	"list": [{
			"pagePath": "pages/index/index",
			"iconPath": "static/resource/tab_index.png",
			"selectedIconPath": "static/resource/tab_index_seled.png",
			"text": "首页"
		}, {
			"pagePath": "pages/order/index",
			"iconPath": "static/resource/tab_pub.png",
			"selectedIconPath": "static/resource/tab_pub_seled.png",
			"text": "订单"
		}, {
			"pagePath": "pages/user/index",
			"iconPath": "static/resource/tab_user.png",
			"selectedIconPath": "static/resource/tab_user_seled.png",
			"text": "我的"
		}
	]
}


http://www.kler.cn/a/464804.html

相关文章:

  • 探索AI在地质科研绘图中的应用:ChatGPT与Midjourney绘图流程与效果对比
  • 计算机网络练习题
  • ScheduledExecutorService详解
  • GESP真题 | 2024年12月1级-编程题2《奇数和偶数》及答案(Python版)
  • 三甲医院等级评审八维数据分析应用(五)--数据集成与共享篇
  • vulnhub Earth靶机
  • 判断旗帜是否符合ISO新标准
  • 基于springcloud分布式的网上商城系统设计与实现【源码+文档+部署讲解】
  • Spark-Streaming有状态计算
  • 十个Scala的小知识
  • 通过blob请求后端导出文件
  • idea项目导入gitee 码云
  • aws(学习笔记第二十一课) 开发lambda应用程序
  • 【3D开发SDK】HOOPS助力NAPA:打造高效三维船舶设计平台
  • 【赵渝强老师】MongoDB的Journal日志
  • Elasticsearch: 高级搜索
  • 华为OD E卷(100分)42-矩形相交面积
  • webserver的http实现
  • MATLAB中whitespacePattern函数用法
  • maya 删除 Ctrl + Delete vs Delete
  • Python实现Excel行列转换
  • 算法 class 005 (对数器C语言实现)
  • 第一次作业
  • Java项目常见基础问题汇总(6)
  • 基于Golang的网络安全靶场设计与实现
  • 利用深度学习进行系统健康监控:智能运维的新纪元