微信小程序开发-配置文件详解

news2024/12/23 8:46:08

文章目录

  • 一,小程序创建的配置文件介绍
  • 二,配置文件-全局配置-pages 配置
    • 作用:
    • 注意事项:
    • 示例:
  • 三,配置文件-全局配置-window 配置
      • 示例:
  • 四,配置文件-全局配置-tabbar 配置
    • 核心作用:
    • 配置项:
    • 示例配置:

一,小程序创建的配置文件介绍

在这里插入图片描述

根据图片内容,微信小程序中包含几种不同的配置文件,每种文件都有其特定的用途和作用。以下是这些配置文件的介绍:

  1. app.json

    • 这是小程序的全局配置文件。
    • 用于配置小程序的一些全局属性和页面路由。
    • 例如,你可以在这里设置小程序的页面路径、窗口表现、网络超时时间、底部 tab 等。
  2. 页面.json

    • 每个小程序页面都可以有一个对应的.json配置文件,称为局部配置文件。
    • 用于配置当前页面的窗口样式、导航栏标题、导航栏颜色等。
    • 这些配置仅对该页面有效。
  3. project.config.json

    • 这是小程序项目的配置文件。
    • 用于保存项目的一些配置信息,如项目名称、appid、项目目录结构等。
    • 也用于保存开发者的个人设置。
  4. sitemap.json

    • 用于配置小程序及其页面是否允许被微信索引。
    • 通过这个文件,可以提高小程序在微信搜索引擎中的搜索概率,从而增加小程序的曝光率。
  5. project.private.config.json

    • 这是一个私有的项目配置文件。
    • 通常用于存储敏感信息或不应提交到版本控制系统的配置,如API密钥等。

二,配置文件-全局配置-pages 配置

在微信小程序的全局配置文件app.json中,pages字段扮演着至关重要的角色。以下是pages字段的作用和注意事项:

作用:

  1. 定义页面路径

    • pages字段用来指定小程序由哪些页面组成。
    • 它定义了小程序中所有页面的路径,让小程序知道页面定义在哪个目录。
  2. 页面路由

    • 通过pages数组,小程序框架能够知道如何根据路径加载对应的页面。
    • 它不需要写文件后缀,框架会自动查找对应位置的.json.js.wxml.wxss四个文件进行处理。
  3. 初始页面

    • 如果没有指定entryPagePath,数组的第一项代表小程序的初始页面(首页)。

注意事项:

  1. 文件后缀

    • 在配置pages字段时,不需要写文件后缀,如index而不是index.wxml
  2. 动态修改

    • 小程序中新增或减少页面时,都需要对pages数组进行相应的修改。
  3. 初始页面

    • 如果没有指定entryPagePath,数组的第一项自动成为小程序的初始页面。
  4. 路径格式

    • 路径应该以斜杠/开头,表示相对于项目根目录的路径。
  5. 数组顺序

    • pages数组中的顺序会影响小程序的页面加载顺序。

示例:

{
  "pages": [
    "pages/index/index",
    "pages/logs/logs",
    "pages/about/about"
  ]
}

在这个示例中:

  • pages/index/index 是小程序的初始页面。
  • pages/logs/logspages/about/about 是其他页面。

通过合理配置pages字段,可以确保小程序的页面结构清晰,便于管理和维护。

三,配置文件-全局配置-window 配置

参考官方文档

在这里插入图片描述

在微信小程序的全局配置文件app.json中,window字段用于设置小程序的状态栏、导航条、标题、窗口背景色等全局样式属性。以下是window配置的作用:

  1. 状态栏样式

    • 可以设置状态栏的颜色、隐藏或显示等。
  2. 导航栏样式

    • 可以设置导航栏的颜色、字体颜色、背景色等。
  3. 导航栏标题

    • 可以设置导航栏标题的文本内容、字体大小、字体颜色等。
  4. 窗口背景色

    • 可以设置小程序窗口的背景颜色。
  5. 导航栏高度

    • 可以设置导航栏的高度。
  6. 下拉背景字体色

    • 可以设置下拉时背景字体的颜色。
  7. 下拉背景色

    • 可以设置下拉时背景的颜色。
  8. 导航栏阴影

    • 可以设置导航栏的阴影效果。
  9. 导航栏圆角

    • 可以设置导航栏的圆角效果。
  10. 导航栏边框

    • 可以设置导航栏的边框。

示例:

{
  "window": {
    "navigationBarTitleText": "小程序标题",
    "navigationBarBackgroundColor": "#ffffff",
    "navigationBarTextStyle": "black",
    "backgroundColor": "#eeeeee",
    "backgroundTextStyle": "light",
    "navigationBarShadow": "#000000",
    "navigationStyle": "custom",
    "enablePullDownRefresh": true
  }
}

在这个示例中:

  • navigationBarTitleText 设置导航栏标题为“小程序标题”。
  • navigationBarBackgroundColor 设置导航栏背景颜色为白色。
  • navigationBarTextStyle 设置导航栏文字颜色为黑色。
  • backgroundColor 设置窗口的背景颜色为浅灰色。
  • backgroundTextStyle 设置下拉时背景字体颜色为浅色。
  • navigationBarShadow 设置导航栏的阴影效果。
  • navigationStyle 设置导航栏样式为自定义。
  • enablePullDownRefresh 启用下拉刷新功能。

通过合理配置window字段,可以确保小程序的界面风格统一,提升用户体验。

四,配置文件-全局配置-tabbar 配置

在微信小程序的全局配置文件app.json中,tabBar字段用于定义小程序的底部 tab 栏,它允许用户快速在不同的页面间切换。

在这里插入图片描述

以下是tabBar的核心作用和配置项。

核心作用:

  1. 页面快速切换

    • 提供一个直观的界面元素,让用户可以快速在不同的页面间切换。
  2. 持久显示

    • 在小程序的底部或顶部持久显示,方便用户随时访问。
  3. 提升用户体验

    • 通过直观的图标和文本,提高用户的操作便利性和小程序的用户体验。

配置项:

  1. list

    • 一个数组,定义了 tab 栏中的所有 tab 项,最少包含 2 个,最多 5 个。
  2. pagePath

    • 指定 tab 对应页面的路径。
  3. iconPath

    • 指定 tab 的默认图标路径。
  4. selectedIconPath

    • 指定 tab 被选中时的图标路径。
  5. text

    • 指定 tab 的文字描述。
  6. borderStyle

    • 指定 tab 栏边框的颜色。
  7. backgroundColor

    • 指定 tab 栏的背景色。
  8. color

    • 指定 tab 的文字和图标的默认颜色。
  9. selectedColor

    • 指定 tab 被选中时的文字和图标颜色。

示例配置:

{
  "tabBar": {
    "list": [
      {
        "pagePath": "pages/index/index",
        "text": "首页",
        "iconPath": "path/to/icon.png",
        "selectedIconPath": "path/to/selected-icon.png"
      },
      {
        "pagePath": "pages/category/category",
        "text": "分类",
        "iconPath": "path/to/icon.png",
        "selectedIconPath": "path/to/selected-icon.png"
      }
    ],
    "borderStyle": "black",
    "backgroundColor": "#ffffff",
    "color": "#000000",
    "selectedColor": "#3cc51f"
  }
}

在这个示例中:

  • list 数组定义了两个 tab 项,每个项都包含页面路径、文本、默认图标和选中图标。
  • borderStylebackgroundColorcolorselectedColor 分别定义了 tab 栏的边框颜色、背景色、默认文字颜色和选中文字颜色。

通过合理配置tabBar,开发者可以创建一个既美观又实用的导航栏,提升小程序的整体体验。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2194634.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

日期类(Date)的实现 (C++版)

​ 🌹个人主页🌹:喜欢草莓熊的bear 🌹专栏🌹:C入门 目录 前言 一、Date的头文件,包含函数声明 二、 Date.cpp 2.1 int GetMonthDay(int year, int month) 2.2 bool Check() 2.3 Date& …

基于YOLOv8-deepsort算法的智能车辆目标检测车辆跟踪和车辆计数

关于深度实战社区 我们是一个深度学习领域的独立工作室。团队成员有:中科大硕士、纽约大学硕士、浙江大学硕士、华东理工博士等,曾在腾讯、百度、德勤等担任算法工程师/产品经理。全网20多万粉丝,拥有2篇国家级人工智能发明专利。 社区特色…

HTB:Funnel[WriteUP]

目录 连接至HTB服务器并启动靶机 1.How many TCP ports are open? 2.What is the name of the directory that is available on the FTP server? 3.What is the default account password that every new member on the "Funnel" team should change as soon a…

cudnn8编译caffe过程(保姆级图文全过程,涵盖各种报错及解决办法)

众所周知,caffe是个较老的框架,而且只支持到cudnn7,但是笔者在复现ds-slam过程中又必须编译caffe,我的cuda版本是11.4,最低只支持到8.2.4,故没办法,只能编译了 在此记录过程、报错及解决办法如下; 首先安装依赖: sudo apt-get install git sudo apt-get install lib…

李宏毅 X 苹果书 自注意力机制 学习笔记下

b1 ,b2...不是依序产生,而是同时被计算好的 从矩阵乘法角度看待self-attention运作过程 矩阵运算表示每一个a都要产生 a k v的操作如下: 矩阵运算表示的计算如下: A‘是A的normalization ,用softmax 矩阵运算表示b计…

Ubuntu有关redis的命令

防火墙: systemctl status firewalld systemctl stop firewalld systemctl disable firewalld.service ifconfig查看ip地址 redis.conf在/etc/redis下,但是得sudo -i进入root模式 进入/etc/redis下开启redis-server服务 查看6379端口是否可以访问 net…

vue3- antd design vue 引入iconfont

文章目录 前言一、新建iconfont项目 前言 vue3项目中,如何引入第三方的iconfont的图标 一、新建iconfont项目 搜索需要的图标,加入购物车,购物车中图片加入项目 下载项目文件,打开压缩包后,将iconfont.js 文件拷贝到…

基于vue框架的大学生心理健康服务平台mwavu(程序+源码+数据库+调试部署+开发环境)系统界面在最后面。

系统程序文件列表 项目功能:学生,心理专家,心理咨询,健康文章,咨询回复,心理案例,监测预警,解压游戏,放松音乐 开题报告内容 基于Vue框架的大学生心理健康服务平台开题报告 一、研究背景与意义 随着社会的快速发展和教育竞争的日益激烈,大学生面临着…

SpringBoot教程(二十四) | SpringBoot实现分布式定时任务之Quartz

SpringBoot教程(二十四) | SpringBoot实现分布式定时任务之Quartz 简介适用场景Quartz核心概念Quartz 存储方式Quartz 版本类型引入相关依赖方式一:内存方式(MEMORY)存储实现定时任务1. 定义任务类2. 定义任务描述及创建任务触发器3. Quartz的…

VirtualBox Ubuntu22.04 NOI linux2.0 Terminal无法打开 终端打不开 两步解决法儿

新安装的虚拟机无法打开Terminal,从应用列表中单击Terminal,左上角任务栏会出现Terminal,并且鼠标转圈,但是过一会左上角Terminal消失,就像一切都没有来过。 解决办法: CTRL ALT F3 进入命令行模式&…

【自然语言处理】补充:基于向量空间的分类器

【自然语言处理】补充:基于向量空间的分类器 文章目录 【自然语言处理】补充:基于向量空间的分类器1. 特征选择2. 基于向量空间的分类方法3. Rocchio4. KNN5. 线性分类器1. 特征选择 特征选择 文本分类中,通常要将文本表示在一个高维空间下,每一维对应一个词项许多维上对应…

如何基于vite实现清除特定环境下的console和debugger

一、解决方法 方法一:使用esbuild 直接在vite.config.ts文件中写,无需下载插件 export default defineConfig(({ mode }) > {// 环境变量const env loadEnv(mode, root, "");return {base: env.VITE_PUBLIC_PATH,plugins: [vue(),...],…

中国书法-孙溟㠭浅析碑帖《九成宫醴泉铭》

中国书法孙溟㠭浅析碑帖《九成宫醴泉铭》 《九成宫醴泉铭》是由魏征撰文、欧阳询书丹,唐贞观六年(公元632年)立碑,篆书体题碑额。内容记载了唐太宗李世民在九成宫避暑山庄发现涌泉的事。 书法法度森严,腴润中见峭劲&…

图文并茂解释水平分表,垂直分表,水平分库,垂直分库

文章目录 1.垂直角度(表结构不一样)垂直分表:垂直分库: 2.水平角度(表结构一样)水平分库:水平分表: 1.垂直角度(表结构不一样) 垂直分表: 将一个表字段拆分成多个表,每个表存储部分字段。好处是避免IO时锁表的次数,分…

数据结构——遍历二叉树

目录 什么是遍历二叉树 根据遍历序列确定二叉树 例题(根据先序中序以及后序中序求二叉树) 遍历的算法实现 先序遍历 中序遍历 后序遍历 遍历算法的分析 二叉树的层次遍历 二叉树遍历算法的应用 二叉树的建立 复制二叉树 计算二叉树深度 计算二…

java发起POST方法请求第三方接口(编码处理)

文章目录 引言I 案例查询船舶轨迹配置JVM编码参数请求提供方常见问题II 工具类III 知识扩展:程序运行源代码各个阶段对编码的处理Java源码--->字节码Java字节码--->虚拟机--->操作系统操作系统-->显示设备引言 使用场景: 调用第三方平台接口 I 案例 查询船舶…

【MySQL】--数据类型

文章目录 1. 选择数据库1.1 语法 2. 查询当前选中的数据库2.1 语法 3. 常见数据类型分类4. 数据值类型4.1 类型列表4.2 数据类型取值范围 5. 字符串类型5.1 类型列表5.2 关于排序5.3 CHAR和VARCHAR的区别5.4 如何选择CHAR和VARCHAR5.5 VARCHAR与TEXT的区别 6. 日期类型6.1 类型…

基于SSM的仿win10界面的酒店管理系统

基于SSM的仿win10界面的酒店管理系统 运行环境: jdk1.8 eclipse tomcat7 mysql5.7 项目技术: jspssm(springspringmvcmybatis)mysql 项目功能模块:基础功能、房间类型、楼层信息、附属功能

重学SpringBoot3-集成Redis(六)之消息队列

更多SpringBoot3内容请关注我的专栏:《SpringBoot3》 期待您的点赞👍收藏⭐评论✍ 重学SpringBoot3-集成Redis(六)之消息队列 1. 什么是发布/订阅(Pub/Sub)?2. 场景应用3. Spring Boot 3 整合 R…

EtherNet/IP 转 EtherNet/IP, EtherCAT/Ethernet/IP/Profinet/ModbusTCP协议互转工业串口网关

EtherCAT/Ethernet/IP/Profinet/ModbusTCP协议互转工业串口网关https://item.taobao.com/item.htm?ftt&id822721028899 协议转换通信网关 EtherNet/IP 转 EtherNet/IP GW系列型号 MS-GW22 概述 简介 MS-GW22 是 EtherNet/IP 和 EtherNet/IP 协议转换网关,…