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

yizhihongxing

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

  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中初始化空数组的最佳方法”的完整攻略: 为什么要初始化空数组? 在PHP中,数组是一种非常常见的数据类型。它可以用于存储一系列的数据,如数字、字符串、对象等。但是,在一些情况下,我们需要先定义一个空数组,然后再将数据添加到这个数组中。这时候,初始化空数组就非常重要了。在未初始化的情况下,PHP在访问数组元素时可能会出现问题。 初始化空数…

    PHP 2023年5月26日
    00
  • 几个实用的PHP内置函数使用指南

    下面就是“几个实用的PHP内置函数使用指南”的详细讲解。 函数1:substr() 作用 substr() 函数用于从字符串中获取子字符串。 语法 substr(string $string, int $start, int $length): string|false 参数 $string:必需,要进行截取的字符串。 $start:必需,从这个位置开始截取…

    PHP 2023年5月23日
    00
  • php文件包含的几种方式总结

    下面我来详细讲解“php文件包含的几种方式总结”。 一、文件包含 在 PHP 中,我们可以使用 include、require、include_once、require_once 函数向 PHP 页面中插入外部文件中的代码,从而实现代码的复用。不过,这些函数在引入外部文件时有着一些不同的特性,下面我们将具体地介绍这几种引入方式的特点和使用方法。 1.incl…

    PHP 2023年5月23日
    00
  • PHP数组遍历的几种常见方式总结

    PHP数组遍历的几种常见方式总结 在 PHP 中,数组是一种非常常见的数据结构。正确使用 PHP 数组遍历方式可以提高代码的效率。接下来将介绍 PHP 数组遍历的几种常见方式。 1. for 循环遍历 PHP 中使用 for 循环来遍历数组是一种非常常见的方式。通过循环逐一获取数组元素,从而实现对数组的遍历。 $fruit = array(‘apple’, …

    PHP 2023年5月25日
    00
  • PHP使用preg_split()分割特殊字符(元字符等)的方法分析

    下面是关于“PHP使用preg_split()分割特殊字符(元字符等)的方法分析”的完整攻略: 什么是preg_split()函数 preg_split()是PHP中的一个正则表达式函数,它用于将一个字符串根据正则表达式模式进行分割。 preg_split()的语法 array preg_split ( string $pattern , string $s…

    PHP 2023年5月26日
    00
  • PHP简单实现生成txt文件到指定目录的方法

    一、简介 在 PHP 中,实现生成 .txt 文件到指定目录需要以下步骤: 生成文件名; 打开文件; 写入内容; 关闭文件。 二、步骤详解 以下是详细的代码实现过程。 生成文件名 我们可以使用日期+随机数的方式来保证文件名不重复。代码如下: $filename = "file_".date("Ymd_His").&qu…

    PHP 2023年5月26日
    00
  • java发送HttpClient请求及接收请求结果过程的简单实例

    我来为你详细讲解一下”Java发送HttpClient请求及接收请求结果过程的简单实例”。 背景知识 在进行本文的阅读之前,需要先理解以下知识点: HttpClient 是一个非常流行的 Java HTTP 客户端,可以用它发送 HTTP 请求,并得到响应结果。 HTTP 请求常见的方法是 GET 和 POST,具体请看 HTTP 请求方法。 HttpCli…

    PHP 2023年5月27日
    00
  • php分页查询的简单实现代码

    当网站的数据量非常多时,需要对数据进行分页来方便用户浏览。PHP分页查询是一个非常常见的需求,下面我们来讲解一下PHP分页查询的简单实现代码。 步骤一:获取分页相关信息 在开始分页之前,我们需要获取分页相关的信息,包括当前页码($page)、每页记录数($pageSize)和总记录数($total)。其中,当前页码和每页记录数可以由前端传递过来,而总记录数需…

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