当前位置:   article > 正文

uni-app知识点整理(2)- 全局配置和页面配置、tabbar、condition_globalstyle

globalstyle

目录

一、globalStyle全局外观配置

1.1 简介

1.2 简单案例练习

二、页面配置

2.1 简单案例练习

三、配置tabbar

3.1 简介

3.2 简单案例练习

四、condition

4.1 简介

4.2 简单案例练习


一、globalStyle全局外观配置

1.1 简介

通过 globalStyle 进行全局配置

官方文档:globalstyle

用于设置应用的状态栏、导航条、标题、窗口背景色等

常用的globalStyle全局配置属性
属性类型默认值描述
navigationBarBackgroundColorHexColor#F7F7F7导航栏背景颜色(同状态栏背景色)
navigationBarTextStyleStringwhite导航栏标题颜色及状态栏前景颜色,仅支持 black/white
navigationBarTitleTextString导航栏标题文字内容
backgroundColorHexColor#ffffff下拉显示出来的窗口的背景色
backgroundTextStyleStringdark下拉 loading 的样式,仅支持 dark / light
enablePullDownRefreshBooleanfalse是否开启下拉刷新,详见uni-app官方文档:页面生命周期
onReachBottomDistanceNumber50

页面上拉触底事件触发时距页面底部距离,单位只支持px,详见uni-app官方文档:页面生命周期

1.2 简单案例练习

  • 导航栏标题颜色修改为:white
  • 导航栏标题修改:测试案例
  • 导航栏背景色修改:#7bbfea
  • 开启下拉刷新
  • 下拉loading样式修改:light
  • 下拉显示出来的窗口的背景色修改:#ffaa00

  1. // pages.json
  2. {
  3. "pages": [ //pages数组中第一项表示应用启动页,参考:https://uniapp.dcloud.io/collocation/pages
  4. {
  5. "path": "pages/index/index",
  6. "style": {
  7. // "navigationBarTitleText": "uni-app"
  8. }
  9. }
  10. ],
  11. "globalStyle": {
  12. "navigationBarTextStyle": "white", // 导航栏标题颜色修改为:white
  13. "navigationBarTitleText": "测试案例", // 导航栏标题修改
  14. "navigationBarBackgroundColor": "#7bbfea", // 导航栏背景色修改
  15. "backgroundColor": "#ffaa00", // 下拉显示出来的窗口的背景色修改
  16. "backgroundTextStyle":"light", // 下拉loading样式修改
  17. "enablePullDownRefresh":true // 是否开启下拉刷新
  18. }
  19. }

二、页面配置

uni-app官方文档 - pages

2.1 简单案例练习

创建一个message页面,代替原本index作为默认页面,修改单独修改 H5 样式

右键pages文件夹,选择创建创建页面,填写页面名称以及模板选择即可,同时会Hbuilder X会自动在pages.json中注册

message.vue

  1. <template>
  2. <view>
  3. message页面
  4. </view>
  5. </template>
  6. <script>
  7. export default {
  8. data() {
  9. return {
  10. }
  11. },
  12. methods: {
  13. }
  14. }
  15. </script>
  16. <style>
  17. </style>

pages.json

  • 将message相关代码移动到index页面前即可代替为默认页面
  1. {
  2. "pages": [ //pages数组中第一项表示应用启动页,参考:https://uniapp.dcloud.io/collocation/pages
  3. {
  4. "path" : "pages/message/message",
  5. "style" :
  6. {
  7. "navigationBarBackgroundColor": "#ff5500",
  8. "h5": { // H5特有配置
  9. "pullToRefresh": { // 下拉刷新设置
  10. "color": "#ffaa00"
  11. },
  12. "titleNView": { // 导航栏设置
  13. "titleText": "message页面"
  14. }
  15. }
  16. }
  17. },
  18. {
  19. "path": "pages/index/index",
  20. "style": {
  21. // "navigationBarTitleText": "uni-app"
  22. }
  23. }
  24. ],
  25. "globalStyle": {
  26. "navigationBarTextStyle": "white", // 导航栏标题颜色修改为:white
  27. "navigationBarTitleText": "测试案例", // 导航栏标题修改
  28. "navigationBarBackgroundColor": "#7bbfea", // 导航栏背景色修改
  29. "backgroundColor": "#ffaa00", // 下拉显示出来的窗口的背景色修改
  30. "backgroundTextStyle":"light", // 下拉loading样式修改
  31. "enablePullDownRefresh":true // 是否开启下拉刷新
  32. }
  33. }

注意:页面中配置项会覆盖 globalStyle 中相同的配置项

三、配置tabbar

3.1 简介

uni-app官方文档 - tabbar

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

注意:

  • 当设置 position 为 top 时,将不会显示 icon
  • tabBar 中的 list 是一个数组,只能配置最少2个、最多5个 tab,tab 按数组的顺序排序。
uni-app官方文档 - tabbar属性说明
属性类型必填默认值描述平台差异说明
colorHexColortab 上的文字默认颜色
selectedColorHexColortab 上的文字选中时的颜色
backgroundColorHexColortab 的背景色
borderStyleStringblacktabbar 上边框的颜色,可选值 black/whiteApp 2.3.4+ 支持其他颜色值、H5 3.0.0+
blurEffectStringnoneiOS 高斯模糊效果,可选值 dark/extralight/light/none(参考:使用说明 (opens new window)App 2.4.0+ 支持、H5 3.0.0+(只有最新版浏览器才支持)
listArraytab 的列表,详见 list 属性说明,最少2个、最多5个 tab
positionStringbottom可选值 bottom、toptop 值仅微信小程序支持
fontSizeString10px文字默认大小App 2.3.4+、H5 3.0.0+
iconWidthString24px图标默认宽度(高度等比例缩放)App 2.3.4+、H5 3.0.0+
spacingString3px图标和文字的间距App 2.3.4+、H5 3.0.0+
heightString50pxtabBar 默认高度App 2.3.4+、H5 3.0.0+
midButtonObject中间按钮 仅在 list 项为偶数时有效App 2.3.4+、H5 3.0.0+
uni-app官方文档 - list属性值
属性类型必填说明平台差异
pagePathString页面路径,必须在 pages 中先定义
textStringtab 上按钮文字,在 App 和 H5 平台为非必填。例如中间可放一个没有文字的+号图标
iconPathString图片路径,icon 大小限制为40kb,建议尺寸为 81px * 81px,当 position 为 top 时,此参数无效,不支持网络图片,不支持字体图标
selectedIconPathString选中时的图片路径,icon 大小限制为40kb,建议尺寸为 81px * 81px ,当 position 为 top 时,此参数无效
visibleBoolean该项是否显示,默认显示App (3.2.10+)、H5 (3.2.10)+
iconfontObject字体图标,优先级高于 iconPathApp(3.4.4+)

3.2 简单案例练习

  • 新创建一个user页面
  • 下载tabbar图标
  • 配置tabbar

 

 图标下载 - 阿里巴巴矢量图标库

pages.json

  1. {
  2. "pages": [ //pages数组中第一项表示应用启动页,参考:https://uniapp.dcloud.io/collocation/pages
  3. {
  4. "path" : "pages/message/message",
  5. "style" :
  6. {
  7. "navigationBarBackgroundColor": "#ff5500",
  8. "h5": { // H5特有配置
  9. "pullToRefresh": { // 下拉刷新设置
  10. "color": "#ffaa00"
  11. },
  12. "titleNView": { // 导航栏设置
  13. "titleText": "message页面"
  14. }
  15. }
  16. }
  17. },
  18. {
  19. "path": "pages/index/index",
  20. "style": {
  21. // "navigationBarTitleText": "uni-app"
  22. }
  23. }
  24. ,{
  25. "path" : "pages/user/user",
  26. "style" :
  27. {
  28. "navigationBarTitleText": "user页面",
  29. "enablePullDownRefresh": false
  30. }
  31. }
  32. ],
  33. "globalStyle": {
  34. "navigationBarTextStyle": "white", // 导航栏标题颜色修改为:white
  35. "navigationBarTitleText": "测试案例", // 导航栏标题修改
  36. "navigationBarBackgroundColor": "#7bbfea", // 导航栏背景色修改
  37. "backgroundColor": "#ffaa00", // 下拉显示出来的窗口的背景色修改
  38. "backgroundTextStyle":"light", // 下拉loading样式修改
  39. "enablePullDownRefresh":true // 是否开启下拉刷新
  40. },
  41. // 配置tabbar
  42. "tabBar": {
  43. "list": [
  44. {
  45. "text": "首页",
  46. "pagePath": "pages/index/index",
  47. "iconPath": "./static/tabs/home.png",
  48. "selectedIconPath": "./static/tabs/home-tap.png"
  49. },
  50. {
  51. "text": "信息",
  52. "pagePath": "pages/message/message",
  53. "iconPath": "./static/tabs/message.png",
  54. "selectedIconPath": "./static/tabs/message-tap.png"
  55. },
  56. {
  57. "text": "用户中心",
  58. "pagePath": "pages/user/user",
  59. "iconPath": "./static/tabs/user.png",
  60. "selectedIconPath": "./static/tabs/user-tap.png"
  61. }
  62. ]
  63. }
  64. }

四、condition

4.1 简介

uni-app官方文档 - condition

启动模式配置,仅开发期间生效,用于模拟直达页面的场景,如:小程序转发后,用户点击所打开的页面

condition属性说明
属性类型是否必填描述
currentNumber当前激活的模式,list节点的索引值
listArray启动模式列表
list说明
属性类型是否必填描述
nameString启动模式名称
pathString启动页面路径
queryString启动参数,可在页面的 onLoad 函数里获得

注意: 在 App 里真机运行可直接打开配置的页面,微信开发者工具里需要手动改变编译模式

4.2 简单案例练习

  • 添加一个detail.vue页面
  • pages.json配置condition模拟跳转

创建一个detail.vue页面

  1. <template>
  2. <view>
  3. Detail详情页
  4. </view>
  5. </template>
  6. <script>
  7. export default {
  8. data() {
  9. return {
  10. }
  11. },
  12. methods: {
  13. }
  14. }
  15. </script>

pages.json内添加以下代码段

  1. "condition": { //模式配置,仅开发期间生效
  2. "current": 0, //当前激活的模式(list 的索引项)
  3. "list": [
  4. {
  5. "name": "详情页", //模式名称
  6. "path": "pages/detail/detail", //启动页面,必选
  7. "query": "id=97" //启动参数,在页面的onLoad函数里面得到。
  8. }
  9. ]
  10. }

运行到微信小程序开发工具,由图示可看出微信小程序开发工具添加新的编译模式,选择跳转后可以看到传递的参数

声明:本文内容由网友自发贡献,转载请注明出处:【wpsshop】
推荐阅读
  

闽ICP备14008679号