微信小程序学习笔记之目录结构、基本配置图文详解

关于“微信小程序学习笔记之目录结构、基本配置图文详解”的完整攻略,我将会分以下几个部分进行讲解:

  1. 目录结构的介绍
  2. app.json文件的配置
  3. 配置各个页面的json文件
  4. 示例说明
  5. 总结

1. 目录结构的介绍

微信小程序采用了类似于MVVM的框架来开发应用,应用主要由配置文件和代码文件两部分组成。其中配置文件主要包括:app.json文件、各个页面的json文件、以及全局的配置文件。代码文件主要包括了组件、页面、工具函数和样式文件。

微信小程序的目录结构如下:

app.js                                    // 小程序入口文件
app.json                                  // 小程序公共配置文件
app.wxss                                  // 小程序公共样式文件
project.config.json                       // 项目配置文件
pages/                                    // 主要存放小程序页面相关文件
    index/                                // index页面目录
        index.js                           // index页面逻辑文件
        index.wxml                         // index页面结构文件
        index.wxss                         // index页面样式文件
        index.json                         // index页面个性化配置文件
    logs/
        logs.js
        logs.wxml
        logs.json
    ...
utils/                                    // 工具函数目录
    util.js                                // 工具函数
components/                               // 组件目录
    componentA/
        componentA.js                      // 组件逻辑文件
        componentA.wxml                    // 组件结构文件
        componentA.wxss                    // 组件样式文件

2. app.json文件的配置

app.json是小程序的公共配置文件,用来配置小程序的全局性质。以下是一份默认的app.json配置示例:

{
  "pages": [                      // 必选项,声明小程序中所有页面路径
    "pages/index/index",
    "pages/logs/logs"
  ],
  "window": {                     // 必选项,小程序的全局配置,详见官方文档
    "navigationBarBackgroundColor": "#fff",
    "navigationBarTextStyle": "black",
    "navigationBarTitleText": "微信小程序",
    "backgroundColor": "#fff",
    "backgroundTextStyle": "light"
  },
  "networkTimeout": {             // 可选项,超时时间
    "request": 10000,
    "downloadFile": 10000
  },
  "debug": true                   // 可选项,是否开启调试
}

其中,pages是必选项,用来声明小程序中的所有页面路径。每一个路径对应pages目录下的一个子目录。例如,"pages/index/index"表示index目录下的index页面。

3. 配置各个页面的json文件

每个页面的目录下都应该有一个json文件,用来对当前页面进行个性化配置。以下是一份示例:

{
  "navigationBarTitleText": "标题",                        // 导航栏标题文字内容
  "navigationBarBackgroundColor": "#ffffff",              // 导航栏背景颜色
  "navigationBarTextStyle": "black",                       // 导航栏标题颜色,仅支持 black/white
  "backgroundTextStyle": "dark",                            // 下拉 loading 的样式,仅支持 dark/light
  "backgroundColor": "#f7f7f7",                             // 窗口的背景色
  "enablePullDownRefresh": true,                            // 是否开启下拉刷新
  "disableScroll": false,                                   // 是否禁止页面滚动
  "usingComponents": {                                      // 引用的自定义组件,具体介绍见官方文档
      "my-component": "/components/my-component/my-component"
  }
}

4. 示例说明

下面通过两个具体的示例来说明使用目录结构和json文件进行小程序开发。

示例1

一个简单的小程序,只有一个主页面,包含一个标题和一张图片。页面所在目录为pages/index,具体文件如下:

pages/
  index/
    index.js
    index.wxml
    index.wxss
    index.json

其中index.js用来处理页面逻辑,可以为空;index.wxml定义了页面结构,代码如下:

<view class="container">
  <view class="title">这是一个标题</view>
  <image src="../../img/pic.png" class="pic"></image>
</view>

样式文件index.wxss

.container {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  margin-top: 100rpx;
  font-size: 36rpx;
}

.title {
  margin-bottom: 50rpx;
}

.pic {
  width: 200rpx;
  height: 200rpx;
  margin-top: 50rpx;
}

index.json为:

{
  "navigationBarTitleText": "主页面"
}

示例2

一个含有导航栏和底部导航栏的小程序,共有3个页面。

目录结构:

pages/
  index/
    index.js
    index.wxml
    index.wxss
    index.json
  contacts/
    contacts.js
    contacts.wxml
    contacts.wxss
    contacts.json
  about/
    about.js
    about.wxml
    about.wxss
    about.json

app.json配置为:

{
  "pages": [
    "pages/index/index",
    "pages/contacts/contacts",
    "pages/about/about"
  ],
  "window": {
    "navigationBarBackgroundColor": "#fff",
    "navigationBarTextStyle": "black",
    "navigationBarTitleText": "微信小程序",
    "backgroundColor": "#f0f0f0",
    "backgroundTextStyle": "light"
  },
  "tabBar": {
    "color": "#999999",
    "selectedColor": "#007AFF",
    "borderStyle": "black",
    "backgroundColor": "#ffffff",
    "list": [
      {
        "pagePath": "pages/index/index",
        "text": "首页",
        "iconPath": "images/home_unselected.png",
        "selectedIconPath": "images/home_selected.png"
      },
      {
        "pagePath": "pages/contacts/contacts",
        "text": "联系人",
        "iconPath": "images/contacts_unselected.png",
        "selectedIconPath": "images/contacts_selected.png"
      },
      {
        "pagePath": "pages/about/about",
        "text": "关于",
        "iconPath": "images/about_unselected.png",
        "selectedIconPath": "images/about_selected.png"
      }
    ]
  }
}

其中tabBar用来定义底部导航栏。list数组中每一项表示一个选项,包含以下几个属性:

  • pagePath:必选项,表示页面路径,必须在pages数组中定义过
  • text:必选项,选项名称
  • iconPath:必选项,未选中时的图标路径(27x27px),支持JPG、PNG、SVG格式
  • selectedIconPath:必选项,选中时的图标路径(27x27px),支持JPG、PNG、SVG格式

pages/about/about为例进行说明,about.js

Page({
  data: {
    about: '这是一段关于我们的介绍'
  }
})

about.wxml

<view class="container">
  <view class="about">{{ about }}</view>
</view>

about.wxss

.container {
  margin-top: 100rpx;
}

.about {
  font-size: 36rpx;
}

about.json

{
  "navigationBarTitleText": "关于我们"
}

5. 总结

本文介绍了微信小程序的目录结构、基本配置以及使用示例。小程序开发使用的目录结构比较清晰明了,各个配置文件的作用也十分明确,可以根据需求灵活配置,方便开发。在进行小程序开发的时候,需要遵守上述规则和建议,才能顺利开发出优秀的小程序应用。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:微信小程序学习笔记之目录结构、基本配置图文详解 - Python技术站

(0)
上一篇 2023年5月23日
下一篇 2023年5月23日

相关文章

  • PHP加密解密字符串汇总

    下面是详细讲解“PHP加密解密字符串汇总”的完整攻略,分以下几部分展开: 1. 简介 首先,为什么需要加密解密字符串呢?因为在网络传输或其他场景下,敏感信息经常需要加密以确保安全性。而PHP是一种常用的服务器端编程语言,它提供了多种加密解密方式供开发者使用。 本文将详细介绍常见的几种PHP加密解密方式及使用方法。 2. 加密解密方式 2.1. base64加…

    PHP 2023年5月26日
    00
  • PHP 内置WEB服务器的简单使用

    下面是详细讲解PHP内置Web服务器的简单使用的完整攻略: 什么是PHP内置Web服务器 PHP内置Web服务器是一个能够在开发测试过程中轻松测试PHP应用程序的快速、小型的Web服务器。 它是从PHP 5.4.0版本开始引入的,默认情况下,PHP内置Web服务器只能在开发环境中使用,不能用于生产环境中。 PHP内置Web服务器的简单使用步骤 步骤一:启动内…

    PHP 2023年5月23日
    00
  • 使用SMB共享来绕过php远程文件包含的限制执行RFI的利用

    使用SMB共享来绕过PHP远程文件包含(RFI)的限制执行是一种常见的攻击技术,也被称为SMB马(SMB-backdoor)。在这种攻击中,攻击者会通过构造恶意请求来将恶意文件上传到目标服务器上,然后将其包含到PHP代码中以达到对服务器的远程控制。 以下是完整的攻略步骤: 寻找具有远程文件包含漏洞的目标站点。 准备一个具有有效文件路径的可上传文件(例如PHP…

    PHP 2023年5月26日
    00
  • php download.php实现代码 跳转到下载文件(response.redirect)

    下面是实现下载功能的完整攻略,包括两个示例说明: 1. 准备下载文件及下载页面 首先需要准备一个要下载的文件,放在服务器上的合适位置。接着在网站上创建一个下载页面,可以在下载页面上放置下载按钮或链接,方便用户点击下载。 2. 编写php下载代码 在下载页面上需要加入php下载代码,使用response.redirect跳转到下载文件,示例代码如下: <…

    PHP 2023年5月27日
    00
  • 是 WordPress 让 PHP 更流行了 而不是框架

    首先要了解的是,WordPress是基于PHP语言开发的开源CMS(内容管理系统)软件。PHP是一种流行的服务器端编程语言之一,其相对容易学习和使用的特性也是让其流行的原因之一。因此,许多开发人员选择基于PHP框架进行开发,如Laravel、Symfony、CodeIgniter等,这些框架帮助开发者通过提供许多常见的解决方案和工具,加快了项目的开发速度和质…

    PHP 2023年5月23日
    00
  • 支付宝小程序蚂蚁应用内测截图曝光

    支付宝小程序蚂蚁应用内测截图曝光 最近有消息称,支付宝小程序蚂蚁应用即将上线内测。下面我们就来讲解一下蚂蚁应用内测的完整攻略。 步骤一:下载蚂蚁开发者工具并注册开发者账号 首先,需要先下载蚂蚁开发者工具并注册开发者账号。蚂蚁开发者工具下载地址为:https://opendocs.alipay.com/mini/ide/download。 注册开发者账号的流程…

    PHP 2023年5月23日
    00
  • 利用php抓取蜘蛛爬虫痕迹的示例代码

    让我来为您讲解“利用php抓取蜘蛛爬虫痕迹的示例代码”的完整攻略。 什么是蜘蛛爬虫痕迹? 蜘蛛爬虫是网络爬虫的一种,它能够在网络上自动抓取网页,并进行分析和处理。在网络访问中,蜘蛛爬虫的行为会影响网站的流量和分析数据。由于蜘蛛爬虫往往具有明显的行为特征,因此可以利用php代码对蜘蛛爬虫进行抓取和监控。 利用php抓取蜘蛛爬虫痕迹的示例代码 代码说明 以下代码…

    PHP 2023年5月27日
    00
  • php使用session二维数组实例

    下面我将详细讲解“PHP使用Session二维数组实例”的完整攻略。 什么是Session? Session是PHP提供的一种客户端和服务器之间的数据存储机制,可以用于在不同页面之间存储和共享数据,或者在同一页面使用不同的请求前后共享数据。 一个Session在服务器端就是一个数组,我们可以通过在PHP代码中设置或读取Session的键/值对来实现相应的数据…

    PHP 2023年5月26日
    00
合作推广
合作推广
分享本页
返回顶部