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

文章目录

  • 一,小程序创建的配置文件介绍
  • 二,配置文件-全局配置-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.mfbz.cn/a/889556.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

【Linux】————进程控制

作者主页: 作者主页 本篇博客专栏:Linux专栏 创作时间 :2024年10月10日 ​ ​ 一、程序地址空间: 1、C/C中的程序地址空间: ​ 在c中我们了解了这样的空间分布图。 我们应如何去创建和访问变量呢?…

VR线上展厅:超越时空的沉浸式展览,打造个性化、高效展览新模式

一、沉浸式漫游:打破时空限制,尽享虚拟之旅 VR线上展厅通过高度逼真的3D场景构建,为参观者营造了一个仿佛置身其中的虚拟世界。借助各种显示设备,用户能够自由穿梭于各个展区之间,无论是漫步在历史悠久的博物馆&#…

双语大脑的神经可塑性能力:来自健康和病理个体的见解

摘要 双语经验的神经印记对于理解大脑如何处理优势语言和非优势语言至关重要,但关于它的研究仍然没有定论。不同的研究表明神经处理存在相似性或差异性,这对患有脑肿瘤的双语患者具有重要意义。保留术后的双语功能需要考虑到术前的神经可塑性变化。在这…

【论文阅读笔记】End-to-End Object Detection with Transformers

代码地址:https://github.com/facebookresearch/detr 论文小结 本文是Transformer结构应用于目标检测(OD)任务的开山之作。方法名DETE,取自Detection Transformer。   作为2020年的论文,其表现精度在当时也不算高的…

pytorch导入数据集

1、概念: Dataset:一种数据结构,存储数据及其标签 Dataloader:一种工具,可以将Dataset里的数据分批、打乱、批量加载并进行迭代等 (方便模型训练和验证) Dataset就像一个大书架,存…

mongodb GUI工具(NoSQLBooster)

介绍 跨平台的MongoDB GUI工具,支持Windows、macOS和Linux。自带服务器监控工具、Visual Explain Plan、查询构建器、SQL查询等功能。提供免费版本,但功能相比付费版本有所限制。 免费版可供个人/商业使用,但功能有限。 安装成功后&#x…

大疆M2006+C610 pid参数调优

官方给的示例代码里给的是1.5, 0.1, 0 但试了下空转时显然不太行. 自己摸索出0.8, 0.03, 0 表现如图中的蓝色线 期望速度先两秒的1000,然后一秒的2000,一秒的3000, 0 2000 表现还不错,可以看到0.5秒后与期望值的差距控制在大概10%之内,但还是感觉有些过调 对了先说一下基础知识…

有什么方法可以保护ppt文件不被随意修改呢?

在工作或学习中,我们常常需要制作powerpoint演示文稿,担心自己不小心改动了或者不想他人随意更改,我们可以如何保护PPT呢?下面小编就来分享两个常用的方法。 方法一:为PPT设置打开密码 为PPT设置打开密码是最直接有效…

活动预告|博睿数据将受邀出席GOPS全球运维大会上海站!

第二十四届 GOPS 全球运维大会暨研运数智化技术峰会上海站将于2024年10月18日-19日在上海中庚聚龙酒店召开。大会将为期2天,侧重大模型、DevOps、SRE、AIOps、BizDevOps、云原生及安全等热门技术领域。特设了如大模型 运维/研发测试、银行/证券数字化转型、平台工程…

九寨沟,智慧旅游新名片

九寨沟属于自然类景区,以优美的自然风光取胜,景区文化内涵相对缺失。智慧化和文旅融合是智慧文旅景区的两个必备条件,九寨沟在智慧文旅景区建设过程中,经历了两个阶段,先是从传统景区迈向智慧景区,然后是充…

设计模式:单例

一.什么是单例模式 单例模式是一种设计模式,指在整个程序生命周期中有且仅有一个实例的类。可以分为懒汉式以及饿汉式。 懒汉式:只有在类的实例被使用时才生成唯一实例。但是存在线程安全以及内存泄露的问题。可以节省系统资源。 饿汉式:程序…

10万+收藏!10万转发!AI绘画如何助力育儿赛道引爆短视频平台?

在自媒体领域,内容创作的竞争日益激烈,但育儿自媒体一直是一块热门且持久的“金矿”,吸引了无数创作者投身其中。然而,如何在这片红海中脱颖而出,成为了许多创作者面临的难题。而AI绘画的出现,无疑解决了创…

这种好看的航线图怎么绘制?超简单~~

今天这篇推文小编给大家介绍一个我一直想绘制的可视化作品-航线地图,网上有很多类似的教程,但在小编看来,都或多或少有些不完美,小编这次就对其进行完善和美化,主要内容如下: 航线地图所需数据处理 航线地…

Linux实践|设置静态 IP 地址

引言 如果您是 Linux 系统管理员,那么您将需要在系统上配置网络。与可以使用动态 IP 地址的台式机不同,在服务器基础设施上,您需要设置静态 IP 地址(至少在大多数情况下)。 本文[1]旨在向您展示如何在最常用的 Linux 发…

The 2024 ICPC Kunming Invitational Contest K. Permutation(交互 期望)

在知乎内查看 题目 思路来源 题解 首先特判n1的情况,其实也不用问 分治,假设当前解决到[l,r],要递归的vector是x, 维护两个vector L、R,代表下一步要在[l,mid]和[mid1,r]分治的vector 每次将x random_shuffle后&a…

UE4 材质学习笔记01(什么是着色器/PBR基础)

1.什么是shader 着色器是控制屏幕上每个像素颜色的代码,这些代码通常在图形处理器上运行。 现如今游戏引擎使用先进的基于物理的渲染和照明。而且照明模型模型大多数是被锁定的。 因此我们创建着色器可以控制颜色,法线,粗糙度,…

C++竞赛初阶—— 石头剪子布

题目内容 石头剪子布,是一种猜拳游戏。起源于中国,然后传到日本、朝鲜等地,随着亚欧贸易的不断发展它传到了欧洲,到了近现代逐渐风靡世界。简单明了的规则,使得石头剪子布没有任何规则漏洞可钻,单次玩法比…

Qt实现Halcon窗口显示当前图片坐标

一、前言 Halcon加载图片的窗口,不仅能放大和缩小图片,还可以按住Ctrl键显示鼠标下的灰度值,这种方式很方便我们分析缺陷的灰度和对比度。 二、实现方式 ① 创建显示坐标和灰度的widget窗口 下图的是widget部件,使用了4个label控…

使用正则表达式删除文本的奇数行或者偶数行

用智谱清言和kimi搜出来的结果都没法在notepad生效,后面在overflow上找到的答案比较靠谱。 查找:^[^\n]*\n([^\n]*) 替换:\1 删除偶数行 查找:^([^\n]*)\n[^\n]* 替换:\1 代码解释 ^:这个符号代表字符…

【Linux】认识Linux内核中进程级别的文件结构体【files_struct】&文件IO模型初步演示

前言 大家好吖,欢迎来到 YY 滴 系列 ,热烈欢迎! 本章主要内容面向接触过C的老铁 主要内容含: 欢迎订阅 YY滴C专栏!更多干货持续更新!以下是传送门! YY的《C》专栏YY的《C11》专栏YY的《Linux》…