百度360必应搜狗淘宝本站头条
当前位置:网站首页 > IT知识 > 正文

微信小程序开发教程1(从0基础到学会UI组件开发)

liuian 2025-01-29 16:48 23 浏览

1、体验官方提供的小程序组件/接口等

可以点击进入相关组件看看效果和如何使用。

2、提前了解小程序的开发与发布

2.1 注册一个小程序的开发账号

https://mp.weixin.qq.com/wxamp/home/guide?lang=zh_CN&token=1313416074

个人只能注册个人的账号,不能注册企业的账号,个人的账号无法调用微信支付的高级接口。

2.1.1 获取appid

注册完小程序,可以在如下找到

2.2、小程序的协同工作与发布推广

1、 添加项目成员和体验成员

2、小程序的版本

3、 小程序的发布

1、 上传代码

上传后可以从以下图中看到上传的代码

2 、提交审核

3 、发布上线

4、 小程序的推广

1、 查看小程序的运营数据

3、微信小程序开发者工具使用

3.1 安装

3.2 创建小程序项目

3.3 开发者工具使用功能介绍

3.3.1 常用的菜单工具

  • 打开开发者文档
  • 构建npm
  • 控制功能窗口是否展示
  • (注意模拟器有时无法真正正常展示开发的功能,一切已扫描二维码测试为准)
  • 查看小程序的本地配置基本信息等
  • 控制模拟器的展示机型(建议选择iphone 6/7/8 )可以切换当前模拟器页面的页面路径、页面参数、场景值等。

3.3.2 预览开发中的小程序界面

方式一点击编译

方式二点击预览,出现一个二维码,用手机微信扫描即可在手机看到界面

3.3.3 常用的开发功能

  • 调式器可以像浏览器一样,调式小程序的页面

4、微信小程序代码结构介绍

4.1 目录结构介绍

1 pages 小程序页面目录

用来存放所有小程序的页面,定义一个页面由如下4部分组成,如index页面

(1)页面里的.json文件

如下小程序的index页的导航就会变成绿色。

(2)页面里的.wxml文件

(3)页面里的.wxss文件

(4)页面里的.js文件

2 app.json全局配置文件

3 project.config.json项目配置文件

对应菜单中的详情

4 sitemap.json项目是否被微信索引配置文件

如下page为* , action为allow,表示所有页面允许被索引(如果不允许改成disallow)

5、小程序环境与代码开发

小程序的宿主环境就是微信,微信给小程序提供了如下:

5.1通信模型

5.2 运行机制

5.3 页面组件

5.3.1 视图容器组件基本使用

5.3.1.1 展示view组件

5.3.1.2 滚动效果scroll-view组件

5.3.1.3 轮播图swiper和swiper-item组件

5.3.2 基础内容组件基本使用

5.3.2.1 文本text组件

长按选中只能在真机测试,在开发工具里无法测试

5.3.2.2 富文本rich-text组件

5.3.2.3 按钮button和图片image组件

button的使用如下

image的使用如下

5.4 页面API

5.5 新建小程序页面

(测试时创建不成功,从新创建项目又可以了)

5.6 修改小程序首页

5.7 小程序页面中4个文件的开发

5.7.1 js文件开发

1、数据定义

2、事件定义

5.7.2 wxml文件开发

1、数据绑定

将js里定义的data数据展示

如下:

{{info}}

2、三元运算符

3、调试器看到当前渲染的数据

4、算术运算

5、事件绑定

(1)介绍

(2)点击事件事例

(2.1)通过点击事件修改data中的数据

(2.2)点击事件传参




(3)文本框输入事件

下图的input应为

(本人测试时进行了手动编译才行,可能工具没反应过来)

(3.1)文本框与data之间的数据同步

第一步:定义数据

第二步:渲染结构

第三步:美化输入框

第四步:绑定input处理事件,实现与data之间的数据同步

6、条件渲染

(1)wx:if wx:else

(2)block控制多个组件的展示与隐藏

(3)hidden

7、列表渲染

(1)wx:for

(2)vx:key

5.7.3 wxss文件开发

1、rpx尺寸单位

2、@import样式导入

3、全局样式和局部样式

权重大小判断就是定位到更小层次的权重一般较高,样式就按权重高的,可以把鼠标放上去可以展示权重,

如下图一比图二的权重就高

5.7.4 json文件开发

1、配置当前页

2、监听当前页的下拉刷新

3、监听上拉触底的加载

(1)上拉加载数据预防多次请求数据

案例如下

4、动态设置导航栏标题

如下场景需要设置动态标题,查官方文档

根据官方说明只能在如下图方法中设置

5.8 全局配置window窗口部分(app.json )

window可以配置如下图中的导航栏区域和背景区域


5.8.1 window节点常用配置项

(1)举例设置导航栏标题

(2)举例设置导航栏背景色

(3)举例设置导航栏标题颜色

(仅支持black/white)

(4)全局开启下拉刷新

不建议全局开启下拉刷新,通常在需要的页面里的json文件开启当前页有下拉刷新

(5)全局下拉的窗口背景色

(6)全局设置下拉的loading的样式

仅支持light、dark

(7)设置上拉触底的距离

5.9 全局配置页签tabBar(app.json)

1 tabBar页签介绍

注意tab项里指定的pagePath相关的页面,在pages里应排在头部的位置,否则可能不展示

2 tabBar页签设置举例

在app.json中加如下

"tabBar": {
"list": [
{
"pagePath": "
pages/pageSamples/pageList/list",

"text": "页面",
"iconPath": "
/images/icon/unchecked1.png",

"selectedIconPath": "/images/icon/checked1.png"
},
{
"pagePath": "
pages/buttonSamples/buttonList/list",

"text": "按钮",
"iconPath": "
/images/icon/unchecked2.png",

"selectedIconPath": "/images/icon/checked2.png"
},
{
"pagePath": "
pages/richTextSamples/richTextList/list",

"text": "富文本",
"iconPath": "
/images/icon/unchecked3.png",

"selectedIconPath": "/images/icon/checked3.png"
},
{
"pagePath": "
pages/swiperSamples/swiperList/list",

"text": "轮播图",
"iconPath": "
/images/icon/unchecked4.png",

"selectedIconPath": "/images/icon/checked4.png"
},
{
"pagePath": "
pages/scrollViewSamples/scrollViewList/list",

"text": "滚动菜单",
"iconPath": "
/images/icon/unchecked5.png",

"selectedIconPath": "/images/icon/checked5.png"
}
]
},

效果

3、自定义tabBar页签(需要用到组件)

步骤一、配置信息

如下为兼容低版本的,tabBar里的list不要删除

步骤二、添加tabBar代码文件(新建组件)

步骤三、使用Vant提供的样式组件

根据Vant后面的代码演示,找到我们需要的即可

相关推荐

总结下SpringData JPA 的常用语法

SpringDataJPA常用有两种写法,一个是用Jpa自带方法进行CRUD,适合简单查询场景、例如查询全部数据、根据某个字段查询,根据某字段排序等等。另一种是使用注解方式,@Query、@Modi...

解决JPA在多线程中事务无法生效的问题

在使用SpringBoot2.x和JPA的过程中,如果在多线程环境下发现查询方法(如@Query或findAll)以及事务(如@Transactional)无法生效,通常是由于S...

PostgreSQL系列(一):数据类型和基本类型转换

自从厂子里出来后,数据库的主力就从Oracle变成MySQL了。有一说一哈,贵确实是有贵的道理,不是开源能比的。后面的工作里面基本上就是主MySQL,辅MongoDB、ES等NoSQL。最近想写一点跟...

基于MCP实现text2sql

目的:基于MCP实现text2sql能力参考:https://blog.csdn.net/hacker_Lees/article/details/146426392服务端#选用开源的MySQLMCP...

ORACLE 错误代码及解决办法

ORA-00001:违反唯一约束条件(.)错误说明:当在唯一索引所对应的列上键入重复值时,会触发此异常。ORA-00017:请求会话以设置跟踪事件ORA-00018:超出最大会话数ORA-00...

从 SQLite 到 DuckDB:查询快 5 倍,存储减少 80%

作者丨Trace译者丨明知山策划丨李冬梅Trace从一开始就使用SQLite将所有数据存储在用户设备上。这是一个非常不错的选择——SQLite高度可靠,并且多种编程语言都提供了广泛支持...

010:通过 MCP PostgreSQL 安全访问数据

项目简介提供对PostgreSQL数据库的只读访问功能。该服务器允许大型语言模型(LLMs)检查数据库的模式结构,并执行只读查询操作。核心功能提供对PostgreSQL数据库的只读访问允许L...

发现了一个好用且免费的SQL数据库工具(DBeaver)

缘起最近Ai不是大火么,想着自己也弄一些开源的框架来捣腾一下。手上用着Mac,但Mac都没有显卡的,对于学习Ai训练模型不方便,所以最近新购入了一台4090的拯救者,打算用来好好学习一下Ai(呸,以上...

微软发布.NET 10首个预览版:JIT编译器再进化、跨平台开发更流畅

IT之家2月26日消息,微软.NET团队昨日(2月25日)发布博文,宣布推出.NET10首个预览版更新,重点改进.NETRuntime、SDK、libraries、C#、AS...

数据库管理工具Navicat Premium最新版发布啦

管理多个数据库要么需要使用多个客户端应用程序,要么找到一个可以容纳你使用的所有数据库的应用程序。其中一个工具是NavicatPremium。它不仅支持大多数主要的数据库管理系统(DBMS),而且它...

50+AI新品齐发,微软Build放大招:拥抱Agent胜算几何?

北京时间5月20日凌晨,如果你打开微软Build2025开发者大会的直播,最先吸引你的可能不是一场原本属于AI和开发者的技术盛会,而是开场不久后的尴尬一幕:一边是几位微软员工在台下大...

揭秘:一条SQL语句的执行过程是怎么样的?

数据库系统能够接受SQL语句,并返回数据查询的结果,或者对数据库中的数据进行修改,可以说几乎每个程序员都使用过它。而MySQL又是目前使用最广泛的数据库。所以,解析一下MySQL编译并执行...

各家sql工具,都闹过哪些乐子?

相信这些sql工具,大家都不陌生吧,它们在业内绝对算得上第一梯队的产品了,但是你知道,他们都闹过什么乐子吗?首先登场的是Navicat,这款强大的数据库管理工具,曾经让一位程序员朋友“火”了一把。Na...

详解PG数据库管理工具--pgadmin工具、安装部署及相关功能

概述今天主要介绍一下PG数据库管理工具--pgadmin,一起来看看吧~一、介绍pgAdmin4是一款为PostgreSQL设计的可靠和全面的数据库设计和管理软件,它允许连接到特定的数据库,创建表和...

Enpass for Mac(跨平台密码管理软件)

还在寻找密码管理软件吗?密码管理软件有很多,但是综合素质相当优秀且完全免费的密码管理软件却并不常见,EnpassMac版是一款免费跨平台密码管理软件,可以通过这款软件高效安全的保护密码文件,而且可以...