当前位置: 首页 > article >正文

【微信小程序开发 - 3】:项目组成介绍

文章目录

  • 项目组成介绍
    • 项目的基本组成结构
    • 小程序页面的组成部分
    • JSON配置文件的作用
      • app.json文件
      • project.config.json文件
      • sitemap.json文件
      • 页面的 .json 配置文件
      • 新建小程序页面
      • 修改项目首页
    • XWML模板
      • XWML 和 HTML 的区别
    • WXSS样式
      • WXSS 和 CSS 的区别
    • .js文件

项目组成介绍

项目的基本组成结构

在这里插入图片描述

  • pages 用来存放所有小程序的页面
  • utils 用来存放工具性质的模块(例如:格式化时间的自定义模块)
  • app.js 小程序项目的入口文件
  • app.json 小程序项目的全局配置文件
  • app.wxss 小程序项目的全局样式文件
  • project.config.json 项目的配置文件
  • sitemap.json 用来配置小程序及其页面是否允许被微信索引

小程序页面的组成部分

小程序官方建议把所有小程序的页面,都存放在 pages 目录中,以单独的文件夹存在,如图所示:
在这里插入图片描述
其中,每个页面由 4个基本文件组成,它们分别是:

  • .js 文件(页面的脚本文件,存放页面的数据、事件处理函数等)
  • json 文件(当前页面的配置文件,配置窗口的外观、表现等)
  • .wxml文件(页面的模板结构文件)
  • .wxss 文件(当前页面的样式表文件)

JSON配置文件的作用

JSON 是一种数据格式,在实际开发中,JSON 总是以配置文件的形式出现。小程序项目中也不例外:通过不同的 .json 配置文件,可以对小程序项目进行不同级别的配置。

小程序项目中有 4种 json 配置文件,分别是:

  • 项目根目录中的 app.json 配置文件
  • 项目根目录中的 project.config.json 配置文件
  • 项目根目录中的 sitemap.json 配置文件
  • 每个页面文件夹中的 .json 配置文件

app.json文件

app.json 是当前小程序的全局配置,包括了小程序的所有页面路径、窗口外观、界面表现、底部 tab 等。

Demo 项目里边的 app.json 配置内容如下:
在这里插入图片描述
简单了解下这 4个配置项的作用:

  • pages:用来记录当前小程序所有页面的路径
  • window:全局定义小程序所有页面的背景色、文字颜色等
  • style:全局定义小程序组件所使用的样式版本。“style”: “V2” 表示默认使用最新样式,将其删除后表示使用旧样式版本。
  • sitemapLocation:用来指明 sitemap.json 的位置

project.config.json文件

project.config.ison 是项目配置文件,用来记录我们对小程序开发工具所做的个性化配置,例如:

  • setting 中保存了编译相关的配置
  • projectname 中保存的是项目名称
  • appid 中保存的是小程序的账号 ID

在“详情”的“本地设置”中进行配置同时也会体现到 project.config.json文件中:

  1. 例如:当前 setting 中的 “es6”: true。
    在这里插入图片描述
  2. 在 “详情-本地设置” 中取消勾选 “将JS编译成ES5”,就会看到 “es6” 的值变为 false。
    在这里插入图片描述
    在这里插入图片描述

sitemap.json文件

微信现已开放小程序内搜索,效果类似于PC网页的 SE0。sitemap.json 文件用来配置小程序页面是否允许微信索引。当开发者允许微信索引时,微信会通过爬虫的形式,为小程序的页面内容建立索引。当用户的搜索关键字和页面的索引匹配成功的时候,小程序的页面将可能展示在搜索结果中。
在这里插入图片描述
在这里插入图片描述
注意:sitemap 的索引提示是默认开启的,如需要关闭 sitemap 的索引提示,可在小程序项目配置文件 project.config.json 的 setting 中配置字段 checkSiteMap 为 false。

若 setting 中没有该字段,可自行添加。

在这里插入图片描述

页面的 .json 配置文件

小程序中的每一个页面,可以使用 .json 文件来对本页面的窗口外观进行配置,页面中的配置项会覆盖
app.json 的 window 中相同的配置项。例如:

  1. app.json 中的配置项中其上部分的北京颜色为白色
    在这里插入图片描述
    在这里插入图片描述
  2. 在 index.json 文件中,设置其上部分的背景颜色为绿色。
    在这里插入图片描述
    在这里插入图片描述

新建小程序页面

只需要在 app.json ->pages 中新增页面的存放路径,小程序开发者工具即可帮我们自动创建对应的页面文件。如图所示:

在这里插入图片描述

修改项目首页

只需要调整 app.json ->pages 数组中页面路径的前后顺序,即可修改项目的首页。小程序会把排在第一位的页面,当作项目首页进行渲染,如图所示:

在这里插入图片描述

XWML模板

WXML (WeiXin Markup Language) 是小程序框架设计的一套标签语言,用来构建小程序页面的结构,其作用类似于网页开发中的 HTML。

XWML 和 HTML 的区别

  1. 标签名称不同
    • HTML(div,span,img,a)
    • WXML(view, text,image, navigator)
  2. 属性节点不同
    • <a href=“#”>超链接</a>
    • <navigator url=“/pages/home/home”></navigator>
  3. 提供了类似于 Vue 中的模板语法
    • 数据绑定
    • 列表渲染
    • 条件渲染

WXSS样式

WXSS (WeiXin Style Sheets) 是一套样式语言,用于描述 WXML 的组件样式,类似于网页开发中的 CSS。

WXSS 和 CSS 的区别

  1. 新增了 rpx 尺寸单位
    • CSS 中需要手动进行像素单位换算,例如rem
    • WXSS 在底层支持新的尺寸单位rpx,在不同大小的屏幕上小程序会自动进行换算
  2. 提供了全局的样式和局部样式
    • 项目根目录中的 app.wxss 会作用于所有小程序页面
    • 局部页面的 .wxss 样式仅对当前页面生效
  3. WXSS 仅支持部分 CSS 选择器
    • .class 和 #id
    • element
    • 并集选择器、后代选择器
    • ::after和::before 等伪类选择器

.js文件

一个项目仅仅提供界面展示是不够的,在小程序中,我们通过 .js 文件来处理用户的操作。例如:响应用户的点击、获取用户的位置等等。

小程序中的 JS 文件分为三大类,分别是:

  1. app.js
    • 是整个小程序项目的入口文件,通过调用 App() 函数来启动整个小程序
  2. 页面的 .js 文件
    • 是页面的入口文件,通过调用 Page() 函数来创建并运行页面
  3. 普通的 .js 文件
    • 是普通的功能模块文件,用来封装公共的函数或属性供页面使用

在这里插入图片描述


http://www.kler.cn/a/446500.html

相关文章:

  • react 项目打包二级目 使用BrowserRouter 解决页面刷新404 找不到路由
  • gitee给DeployKey添加push权限
  • EasyExcel 导出文件
  • 网络安全概论——防火墙原理与设计
  • [python SQLAlchemy数据库操作入门]-02.交易数据实体类建立
  • 【Flutter_Web】Flutter编译Web第二篇(webview篇):flutter_inappwebview如何改造方法,变成web之后数据如何交互
  • 易快报-飞书-金蝶云星空集成项目技术分享
  • QoS 流分类
  • 云手机有哪些用途?云手机选择推荐
  • leetcode 面试经典 150 题:长度最小的子数组
  • HCIA/HCIP/HCIE的报名官网
  • Python中bs4库的详细介绍
  • 多个Echart遍历生成 / 词图云
  • 相机内外参知识
  • 【Rust自学】4.4. 引用与借用
  • Golang学习历程【第三篇 基本数据类型类型转换】
  • idea部署maven项目步骤(图+文)
  • 深入理解 JVM 垃圾回收机制
  • Neo4j【环境部署 02】图形数据库Neo4j在Linux系统ARM架构下的安装使用
  • MacPorts 中安装高/低版本软件方式,以 RabbitMQ 为例
  • 《基于 Python 的网页爬虫详细教程》
  • 便捷就医新引擎:SSM 医院预约挂号系统 Vue 实现方案设计
  • wpf mvvm 数据绑定数据(按钮文字表头都可以),根据长度进行换行,并把换行的文字居中
  • 利用Python爬虫快速获取商品历史价格信息
  • SSM+Vue 驱动的电脑测评系统:诠释科技评测新高度
  • 开源云原生数据仓库ByConity ELT 的测试体验