【支付宝小程序】开发基础--文件结构教程

news/2024/7/20 2:10:05 标签: 小程序, javascript

🦖我是Sam9029,一个前端
Sam9029的CSDN博客主页:Sam9029的博客_CSDN博客-JS学习,CSS学习,Vue-2领域博主
🐱‍🐉🐱‍🐉恭喜你,若此文你认为写的不错,不要吝啬你的赞扬,求收藏,求评论,求一个大大的赞!👍

文章目录

    • 概述
    • 文件详解
      • app.json
      • pages/index/index.json
      • page/index/index.js

概述

  • 本文将介绍支付宝小程序开发中文件结构的相关知识

支付宝小程序的文件结构主要包括以下几个部分:
app.json:应用的入口文件,用于配置小程序的基本信息,如小程序名称、版本号等。
pages:页面文件夹,用于存放小程序的各个页面,每个页面对应一个**.json**文件。

- pages
	- index
		- 	index.js
		-   index.axml
		-   index.acss
		-   index.json

index.js:JS业务逻辑文件,用于处理小程序的业务逻辑和生命周期函数。它包含了小程序的页面逻辑、数据处理、API 调用等内容。
index.axml:页面结构文件,用于描述小程序的页面布局和元素。它包含了页面的 XML 代码,用于生成页面的 DOM 树。
index.acss:页面样式文件,用于定义页面的样式和布局。它包含了 CSS 代码,用于控制页面的样式和展示效果。
index.json:页面配置文件,用于描述小程序的基本信息和配置。它包含了小程序的页面路径、窗口参数、权限设置等内容

utils:工具文件夹,用于存放小程序的工具函数,如数据请求、本地存储等。
components:组件文件夹,用于存放小程序的自定义组件,每个组件对应一个**.json**文件。
app.js:应用的主进程文件,用于处理小程序的生命周期事件、页面路由等。
mini.project.json 中配置项目编译、打包策略。推荐使用新版 项目配置。

主要结构示例

├── pages
│   ├──index
│   │    ├── index.json
│   │    ├── index.js
│   │    ├── index.axml
│   │    └── index.acss
│   ├──logs
│   │    ├── logs.json
│   │    ├── logs.js
│   │    └── logs.axml
├── app.json
├── app.js
└── app.acss

文件详解

关于 axml,js,acss 都是基础的,不在赘述, 对重要的json配置文件结构进行介绍,主要是app.json 和个页面的 json配置

app.json

  • eg

支付宝小程序的 app.json 文件是小程序的配置文件,它包含了小程序的基本信息和设置。以下是一些主要的配置项:

"window": {
	"backgroundTextStyle": "light",
	"navigationBarBackgroundColor": "#fff",
	"navigationBarTitleText": "示例小程序",
	"navigationBarTextStyle": "black"
}

这段配置定义了小程序的窗口样式,包括背景颜色、导航栏背景颜色、标题文本和文本颜色。

"pages": [
	"pages/index/index",
	"pages/logs/logs"
]

这段配置定义了小程序的页面路径,其中 “pages/index/index” 是小程序的首页,“pages/logs/logs” 是日志页面。

"permission": {
	"scope.userLocation": {
	"desc": "你的位置信息将用于获取周边信息"
	},
	"scope.userInfo": {
	"desc": "你的个人信息将用于注册和登录"
	}
}

这段配置定义了小程序所需的权限,包括获取用户位置信息和用户个人信息。同时,还需要为用户提供相应的权限描述。

下面是完整示意app.json

{
 "version": "1.0.0",  
 "title": "支付宝小程序示例",  
 "description": "一个简单的支付宝小程序",  
 "app_status": "online",  
 "background_color": "#ffffff",  
 "theme_color": "#000000",  
 "display": "standalone",  
 " orientation": "portrait",  
 " shortcut_path": "./index.html",  
 "window": {  
   "backgroundTextStyle": "light",  
   "navigationBarBackgroundColor": "#fff",  
   "navigationBarTitleText": "支付宝小程序示例",  
   "navigationBarTextStyle": "black",  
   "tabBar": {  
     "selectedColor": "#000000",  
     "list": [  
       {  
         "pagePath": "pages/index/index",  
         "text": "首页",  
         "iconPath": "assets/images/tabbar/home.png",  
         "selectedIconPath": "assets/images/tabbar/home-active.png"  
       },  
     ]  
   }  
 },  
 "pages": [  
   "pages/index/index",  
   "pages/logs/logs"  
 ],  
 "components": {  
   "date-picker": {  
     "usingComponents": {  
       " anger-rate": "./components/anger-rate/anger-rate"  
     }  
   }  
 }  
}

pages/index/index.json

以下就是一个 页面中基本的

{
  "defaultTitle": "",
  "allowsBounceVertical": "NO",
  "transparentTitle": "auto",
  "titleBarColor": "#262833",
  "optionMenu": {
    "icon": "https://img.alicdn.com/tps/i3/T1OjaVFl4dXXa.JOZB-114-114.png"
  },
  "titlePenetrate": "YES",
  "barButtonTheme": "light"
}

下面是json 配置的详细文档
json——基础配置
json——页面配置


page/index/index.js

另外一个重要的就是 页面的js业务逻辑文件

{
 "page": {  
   "title": "首页",  
   "path": "pages/index/index",  
   "style": {  
     "navigationBarTitleText": "首页"  
   },  
   "script": {  
     "usingComponents": {  
       "date-picker": "../../components/date-picker/date-picker"  
     },  
     "beforeLoad": function () {  
       // 页面加载前执行的函数  
     },  
     "onLoad": function () {  
       // 页面加载后执行的函数  
     },  
     "onUnload": function () {  
       // 页面卸载前执行的函数  
     },  
     "onShow": function () {  
       // 页面显示前执行的函数  
     },  
     "onHide": function () {  
       // 页面隐藏前执行的函数  
     }  
   }  
 }  
}

支付宝小程序页面生命周期函数:一个戏精的诞生
beforeLoad
在预热阶段,页面的 DOM 结构和组件还没准备好。这就像一个演员还在后台化妆,我们趁这个机会去请求一些数据,做做准备工作。
onLoad
正式登场!这个时候页面的 DOM 结构和组件已经加载完成,可以开始渲染和初始化了。就像是演员终于化好妆,可以登台表演了。在这个阶段,我们可以进行数据绑定、事件监听等操作,让页面展现出它的魅力。
onUnload
谢幕时刻。这个时候页面的组件已经卸载,但页面的 DOM 结构还没完全销毁。就像是演员已经下台,但舞台还没拆完。我们可以在这个阶段进行一些清理工作,例如清除定时器、解绑事件等,确保舞台干净整洁。
onShow
亮相前夕!这个时候页面的 DOM 结构已经加载完成,但页面的显示状态还未改变。就像是演员已经站在舞台边,准备登场。在这个阶段,我们可以进行一些页面显示前的操作,例如修改页面的样式、状态等,让演员以最佳形象亮相。
onHide
完美收场!这个时候页面的显示状态已经改变,但页面的 DOM 结构还未销毁。就像是演员已经表演完毕,准备离开舞台。在这个阶段,我们可以进行一些页面隐藏前的操作,例如保存用户数据、清除定时器等,确保演员顺利收场。

了解这些生命周期函数就像是了解一个戏精的表演过程,可以帮助我们更好地管理页面的加载、显示、隐藏等状态,确保页面的顺利运行。


🦖我是Sam9029,一个前端

文章若有错误,敬请指正🙏

🐱‍🐉🐱‍🐉恭喜你,都看到这了,求收藏,求评论,求一个大大的赞👍!不过分吧

[Sam9029的博客_CSDN博客-JS学习,CSS学习,Vue-2领域博主](


http://www.niftyadmin.cn/n/4956520.html

相关文章

Java 面试题--SpringBoot篇

一、什么是 SpringBoot? Spring Boot 是 Spring 开源组织下的子项目, 是 Spring 组件一站式解决方案,主要是简化 了使用 Spring 的难度,简省了繁重 xml 的配 置,提供了各种启动器,在运行过程中自定 配置,&a…

websocket + stomp + sockjs学习

文章目录 学习链接后台代码引入依赖application.ymlWebSocketConfigPrivateControllerWebSocketService WebSocketEventListenerCorsFilter 前端代码Room.vue 学习链接 WebSocket入门教程示例代码,代码地址已fork至本地gitee,原github代码地址&#xff…

超详细,一文了解PgMP!

PgMP,即Program Management Professional是美国项目管理协会PMI认证体系的新成员,它为拥有项目集管理丰富经验及项目管理熟练技能的人士提供一个客观的衡量标准。 美国项目管理协会PMI,即Project Management Institute成立迄今将近四十年&am…

RISC-V公测平台发布 · 数据库在RISC-V服务器上的适配评估

前言 上一期讲到YCSB在RISC-V服务器上对MySQL进行性能测试(RISC-V公测平台发布 使用YCSB测试SG2042上的MySQL性能),在这一期文章中,我们继续深入讨论RISC-V数据库的应用。本期就继续利用HS-2平台来测试数据库软件在RISC-V服务器…

爱校对:将公文校对提升到新的高度

在正式的商务环境中,公文无疑是最核心的沟通工具。无论是政府公告、公司文件还是官方通讯,公文的正确性和准确性都至关重要。这也就解释了为什么公文校对如此重要。而在众多的校对工具中,“爱校对”凭借其先进技术,为公文校对设定…

K8S应用笔记 —— 签发自签名证书用于Ingress的https配置

一、需求描述 在本地签发自命名证书,用于K8S集群的Ingress的https配置。 前提条件: 完成K8S集群搭建。完成证书制作机器的openssl服务安装。 二、自签名证书制作 2.1 脚本及配置文件准备 2.1.1 CA.sh脚本准备 注意事项: openssl服务默认CA…

公司内部测试团队可以替代专业的软件检测机构吗,性能测试怎么收费?

尽管软件测试是伴随着软件开发的发展而产生的,但是在信息技术日新月异的今天,软件测试逐渐走出开发附庸的定位。 一方面,很多大型企业都在内部设置了专门的测试团队以承接软件系统的测试工作,为产品质量把关。另一方面&#xff0c…

GRS的认证费用,什么是TC交易证书?

【GRS的认证费用,什么是TC交易证书?】 什么是GRS认证 GRS是全球回收标准,英文名:GLOBAL Recycled Standard (简称GRS认证),是一个国际化,自愿性的,以及针对完整产品标准。内容针对供应链厂商对产品回收/再生成分、监管…