原生微信小程序笔记完整总结4.0

   🤹‍♀️潜意识起点:个人主页

🎙座右铭:得之坦然,失之淡然。

💎擅长领域:大前端

是的,我需要您的:

🧡点赞❤️关注💙收藏💛

是我持续下去的动力!


目录

一. 小程序的基本了解

1.1 小程序和网页的区别 *

1.2 小程序的项目结构

1.3 小程序的页面结构

二. 小程序页面 

  2.1 创建小程序页面

2.2 什么是wxml 

2.3 什么是wxss 

三. 小程序的基本语法

 3.1 view

3.2 scorll-view

 3.3 swiper

 3.4  text

 3.5 button

3.6 image

 四.小程序数据绑定和使用

 4.1 定义data数据

4.2 使用data数据 

 4.3 事件绑定bind:tap

4.4 this.setdata 

4.5 条件渲染vx:if

4.6 hidden

4.7 v:if 和 hidden的对比

五.小程序的其他知识点

 5.1 rpx尺寸单位

 5.2 微信小程序数据请求

 六.笔记总结


🏃‍♀️作者想说的话:

🧡

笔记是我观看黑马小程序课程总结出我认为比较重要的知识点,笔记是我的原创,知识点是我自己总结。要某一个知识点比较详细的话可以去找其他博文,作者从自学到写下这篇文章过程中有一定的编码经验,全部重点,我认为用不到的不会出现在笔记中!

🧡

❤️

不要用于商业活动,谢谢配合!

❤️

💙

本人也是大学生,编码习惯学习习惯不是特别的规范,用于交流学习讨论,目的在于提高大家的前端编程水平哈。希望这篇微信小程序的知识点能有效的帮助到大家!

💙


🧡一. 小程序的基本了解


1.1 小程序和网页的区别 *

e4d8e4ac75b04998bd730dd602db9917.png


1.2 小程序的项目结构

🤹‍♂️后面会出现页面结构,组件结构,简单来说 :项目结构是包括页面结构和组件结构的。💚

6c3ce81aaade44c98ce9e69f087b73b8.png

💗这里记住这三个结构就可以了,其他的后面进阶了再了解,我认为简单的项目其他也用不到 

a9f20a95379b4984832d62c02c7319ad.png

059a96d3d7214a4184ab0abb6d2e99b3.png

0e12e4079da14aeea4028489aa527d07.png

🍓你要有个概念:

  1. json结尾的就是配置文件。
  2. js结尾的就是js文件,放一些数据或者方法的。


1.3 小程序的页面结构

 89e9c0217b78497ea2266ffffdd7bb31.png

💜如上图所示:

1.放在pages文件夹中的index和logs文件夹就是一个页面文件夹 ,里面放着页面的四个文件

2.js就是原生js

3.wxml可以看成html

4.wxss可以看成css

53374fd821d9455a8dfac7918510f70d.png


  

💚二. 小程序页面 


 
 2.1 创建小程序页面

创建小程序页面非常简单的 

第一步:找到app.json

0b4ca225779e4812b206abafb6c48c04.png

第二步:直接如上图模仿上面的路径再添加一个路径,如下所示:

  "pages": ["pages/home/home","pages/contact/contact","pages/shoplist/shoplist","pages/index/index"],

 第三步:小程序会自动创建出index页面,非常简单!

🧡小程序自动创建出页面文件夹,而且js json wxml  wxss四件套都帮你建好了。很神奇吧!

8c91ec29571e40e48d37d94358b90d15.png


2.2 什么是wxml 

可以直接认为是html😀

wxml和html有一些区别:

 f1ee725f6d9144b4b704528726637930.png

😅我们写微信小程序的话,div   ==   view 之类的不同,参考上表就可以了 


2.3 什么是wxss 

可以直接认为是css 😀

a8ae8541423d48b7a14a36c0161d0de5.png​ 

58b975d6335849f5ada58d50f033a916.png​ 

109c6b1b54844014b8c7dbdf5dcc4af5.png​ 

上面三张图片去了解了wxss的知识点就了解的差不多了 😆


💜三. 小程序的基本语法


 3.1 view

😂学过 html的都知道   view和div是一个用法

使用方法如下图所示,其他的我就不想啰嗦了。本来就简单!

<view>hello world</view>

706e4786005440a9a5621cbbf1a3b89e.png​ 


3.2 scorll-view

scorll-view的基本介绍:记住是滚动盒子就可以了

 实现一个案例帮助你更快的理解scorll-view
7a2844ad24654e14a0b8653330816101.png

wxml中的代码 :

<scroll-view scroll-y><view class="one">1</view><view class="two">2</view><view class="three">3</view><view class="four">4</view>
</scroll-view>

wxss中的代码: 

scroll-view{/* display: flex; */width: 200rpx;height: 150px;
}
.one{width: 200rpx;height: 100px;background-color: aqua;
}
.two{width: 200rpx;height: 100px;background-color:red;
}
.three{width: 200rpx;height: 100px;background-color:sandybrown;
}
.four{width: 200rpx;height: 100px;background-color:seagreen;
}

运行结果: 往上滑动可以展示更多的盒子。

a83cec35bd5547beb22fbf484bb95bfe.png

注意事项:

💙

用scorll-view的时候,scorll-view是作为最外面的大盒子的,里面还要一些view小盒子才可以实现滑动的效果。

💙

💜

用scorll-view的时候一定要给父盒子scorll-view设置一个宽高。

💜 


 3.3 swiper

 简单介绍:swiper是轮播图用的标签。

 下面一个案例带你了解轮播图swiper的使用。

wxml代码:

<!-- 轮播图结构 -->          
<!-- indicator-dots="true"设置是否出现小圆点 -->
<swiper class="swiper-container">
<!-- 第一个轮播图 轮播图里面可以放文字或图片,这里我放文字了-->
<swiper-item><view class="item">A</view>
</swiper-item>
<!-- 第二个轮播图 -->
<swiper-item><view class="item">B</view>
</swiper-item>
<!-- 第三个轮播图 -->
<swiper-item><view class="item">C</view>
</swiper-item>
<!-- 还需要第四个轮播图就再添加一个<swiper-item></swiper-item>即可 -->
</swiper>

wxss中的代码:

.swiper-container{height: 150px;
}
.item{height: 100%;line-height: 150px;text-align: center;
}
swiper-item:nth-child(1) .item{background-color: darkgoldenrod;
}
swiper-item:nth-child(2) .item{background-color: chartreuse;
}
swiper-item:nth-child(3) .item{background-color:magenta;
}

 运行结果:

5ed352f720464bf5bb56679c5405fbcc.png

swiper的常用属性:

e398a7d6dfd54eb3a80c5a5bb0b6f16e.png  


 3.4  text

 text没什么好讲的他就像html中的span知道吧,然后text有一个特性其他的标签没有的!

754e0ea2e3d04640991c00545c2c9892.png

wxml中代码:

<text selectable>18888888888</text>

 这样设置selectable属性,那么小程序就可以对这部分内容进行复制:

这是text唯一具有的特性!


 3.5 button

button是一个按钮,看下面这图足够了!

 dc27bfd1af9546f1afcc12ee81d3ab11.png


3.6 image

image是放图片的,相当于html中的img

3617469b63834aac96545bdc8b658700.png

🏃‍♀️基本使用方式:

<image src="图片地址"></image>

image中有一个最重要的属性mode:

 1d5cf0865e2d4acfb859faf6e8211ba3.png

使用方式如图所示:

857724bda4544c48aa7a682710f3b915.png


 💙四.小程序数据绑定和使用


 4.1 定义data数据

找到页面的 .js文件

a21a4e81c2b14c35ad97279f3ca9fd1b.png

然后data里面就是放数据和方法的,如图所示即可:

1a2b103f095a4e2793df53accdd67012.png


4.2 使用data数据 

 💗使用data数据直接花括号就可以了,这个花括号叫Mustache语法

44c06deebf724d5b80d832f50035c607.png  


 4.3 事件绑定bind:tap

🙉事件绑定很重要哦!事件绑定说的简单点就是给绑定点击事件,更简单点说就是给个按钮触发点击事件。就相当于@click。

使用方式 

<button type="primary" bind:tap="btn">点击触发</button>

我这讲的有一点基础要更加详细请移步:微信小程序基础


4.4 this.setdata 

this.setdata就是修改data中的值的用法,如下图所示:

dd76c378ec3246378aef10301e266716.png


4.5 条件渲染vx:if

🦁wx:if相当于vue中的v-if使用方式如下图所示:

18e0fb21c7c14a6da78a8ee360c8d8c1.png 780b2db18f004b39b7c3236c9fa4dbf4.png

 我这讲的有一点基础要更加详细请移步:微信小程序基础


4.6 hidden

学完vue后你可能不知道hidden是什么东西,hidden中文意思是隐藏的意思

e2c03f1b64824e7681238b76d5715d5a.png

95f43f92d2d74a25bfc2a070642aa86d.png 基本上和wx:if是一个用法,感觉会其中一个就差不多了,多去找几个项目做做!


4.7 v:if 和 hidden的对比

 abb59c5277284292a9df7c4202fbdce8.png

 72e818e902ee4738b65825d8cef58c89.png


 4.8  wx:for列表渲染

 e9510c2e31684817a3f73e4c9023646d.png

数组的遍历渲染:会有index  会有item 都是可以进行遍历的 

8c1fe9805be14131b0e2059bc09efe10.png


💛五.小程序的其他知识点


 5.1 rpx尺寸单位

💗

响应式设计rpx是一种相对单位,其值相对于屏幕宽度。屏幕宽度分为750rpx,这意味着1rpx等于屏幕宽度的1/750。这种设计使得布局能够根据屏幕宽度自动调整,实现响应式设计。

💗

💚

灵活性rpx单位的使用提高了布局的灵活性,使得开发者可以快速适配不同尺寸的屏幕,无需为不同屏幕单独编写样式。

💚

🧡

性能考量: 虽然rpx提供了响应式布局的能力,但在使用时也应注意不要过度依赖过于复杂的布局和样式计算,以免影响小程序的性能。

🧡

💜

开发者工具支持: 微信开发者工具支持rpx单位的预览和调试,开发者可以通过工具实时查看不同屏幕尺寸下的布局效果。

💜

❤️

兼容性rpx单位在微信小程序中广泛使用,但需要注意的是,它仅适用于微信小程序平台,不是一种通用的Web标准。

❤️

使用方式:在微信小程序的WXML文件中,可以使用rpx单位来设置样式属性,如宽度、高度、边距、字体大小等。  微信小程序的页面宽度默认为750rpx,开发者可以在app.json或页面的.json文件中设置页面的窗口大小,以适应不同屏幕尺寸。

<view style="width: 100rpx; height: 50rpx;"></view>
{"window": {"width": "750rpx","height": "1334rpx"}
}


 5.2 微信小程序数据请求

🧡微信小程序提供了wx.request方法来发起HTTP请求。基本用法如下:

wx.request({url: 'https://example.com/api/data', // 开发者服务器接口地址method: 'GET', // 请求方法,如GET或POSTdata: {}, // 请求参数header: {'content-type': 'application/json' // 头部信息},success(res) {console.log(res.data) // 接口调用成功的回调},fail(err) {console.error(err) // 接口调用失败的回调}
})

💙在页面发起请求:

// 在页面的JavaScript文件中发起请求
Page({data: {items: []},onLoad: function() {this.fetchData();},fetchData: function() {wx.request({url: 'https://example.com/api/items',success: (res) => {this.setData({ items: res.data });},fail: (err) => {wx.showToast({title: '加载失败',icon: 'none'});}});}
});

 💙六.笔记总结

学习微信小程序是一个充满挑战和乐趣的过程,它不仅让我对前端开发有了更深入的理解,也让我体会到了移动应用开发的便捷和高效。希望笔记能真正的帮助到大家!


🤹‍♀️潜意识起点:个人主页

🎙座右铭:得之坦然,失之淡然。

💎擅长领域:大前端

是的,我需要您的:

🧡点赞❤️关注💙收藏💛

是我持续下去的动力!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/402190.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【MySQL】事务管理

【MySQL】事务管理 什么是事务为什么要有事务事务的版本支持事务的提交方式事务的常见操作事务的隔离级别如何理解隔离性隔离级别隔离级别的设置与查看读未提交【Read Uncommitted】读提交【Read Committed】可重复读【Repeatable Read】串行化【serializable】一致性(Consiste…

代码随想录算法训练营43期 | Day 14——226.翻转二叉树、101. 对称二叉树、104.二叉树的最大深度、二叉树最小深度

代码随想录算法训练营 226.翻转二叉树101. 对称二叉树递归法 104.二叉树的最大深度二叉树最小深度 226.翻转二叉树 leetcode链接 思路&#xff1a; 递归三部曲&#xff1a; 确定递归函数的参数和返回值确定终止条件确定单层递归的逻辑 递归法 TreeNode* invertTreeNode(Tree…

并发系统的 CSP+PAT 形式化建模与验证方法(以Kafka系统为例)

消息队列中间件是分布式系统的重要组成部分。它允许应用程序仅关注数据本身&#xff0c;而无需关心数据传输的具体细节。这一特性有效解决了消息异步传输、应用程序解耦以及流量削峰等问题。Kafka是一个开源的分布式消息系统&#xff0c;它基于发布-订阅模型构建。Kafka具有低延…

Unity使用代码生成ScriptableObject数据并赋值之后,重启数据就没有啦!

2024年8月14日早&#xff0c;因数据持续化存储&#xff0c;重启电脑后数据会丢失&#xff0c;而我找不到原因被领导质疑了&#xff0c;故写一片博客记录这个错误。 省流 使用在编辑器的play模式中为ScriptableObject赋值之后&#xff0c;需要使用 #if UNITY_EDITORUnityEdit…

Codeforces Round 495 (Div. 2) F. Sonya and Bitwise OR(线段树)

原题链接&#xff1a;F. Sonya and Bitwise OR 题目大意&#xff1a; 给出一个长度为 n n n 的数组 a a a&#xff0c;并给出 m m m 次询问以及一个数字 x x x。 每个询问形式如下给出&#xff1a; 1 1 1 i i i y y y &#xff1a;将 a i a_{i} ai​ 位置的值更改为 y…

数据库分库分表的介绍

为什么要分库分表 把存于一个库的数据分散到多个库中&#xff0c;把存于一个表的数据分散到多个表中。如果说读写分离是为了分散数据库读写操作压力&#xff0c;分库分表就是为了分散存储压力&#xff0c;一般情况下&#xff0c;单表数据量到达千万级别&#xff0c;就可以考虑…

基于飞腾平台的Hbase的安装配置

【写在前面】 飞腾开发者平台是基于飞腾自身强大的技术基础和开放能力&#xff0c;聚合行业内优秀资源而打造的。该平台覆盖了操作系统、算法、数据库、安全、平台工具、虚拟化、存储、网络、固件等多个前沿技术领域&#xff0c;包含了应用使能套件、软件仓库、软件支持、软件适…

支持S/MIME证书的邮件客户端有哪些?

S/MIME证书&#xff0c;也叫做邮件安全证书&#xff0c;支持安全/多用途互联网邮件扩展协议&#xff08;S/MIME协议&#xff09;&#xff0c;是通过加密和数字签名来确保电子邮件的安全性、保密性和完整性的数字证书。GDPR、HIPAA、FDA等多个行业都要求邮件发送方在发送邮件时对…

基于R语言遥感随机森林建模与空间预测;遥感数据处理与特征提取;数据分析与可视化

目录 第一章 理论基础与数据准备【夯实基础】 第二章 随机森林建模与预测【讲解实践】 第三章 实践案例与项目 更多应用 随机森林作为一种集成学习方法&#xff0c;在处理复杂数据分析任务中特别是遥感数据分析中表现出色。通过构建大量的决策树并引入随机性&#xff0c;随…

C++ 特殊类设计以及单例模式

目录 1 不能被拷贝 2 只能在堆上创建对象 3 只能在栈上创建对象 4 禁止在堆上创建对象 5 不能被继承的类 6 单例类 特殊类就是一些有特殊需求的类。 1 不能被拷贝 要设计一个防拷贝的类&#xff0c;C98之前我们只需要将拷贝构造以及拷贝赋值设为私有&#xff0c;同时只声明…

RTX 4070 GDDR6显存曝光:性能与成本的平衡之选

近期&#xff0c;关于NVIDIA RTX 4070新显卡的信息曝光&#xff0c;这款显卡将配备较为缓慢的GDDR6显存&#xff0c;而非更高性能的GDDR6X。这一配置的选择引发了业内的广泛关注&#xff0c;特别是在性能与成本的平衡问题上。 新版RTX 4070 OC 2X的核心特点 **1.显存类型与带…

8B 端侧小模型 | 能力全面对标GPT-4V!单图、多图、视频理解端侧三冠王,这个国产AI开源项目火爆全网

这两天&#xff0c; Github上一个 国产开源AI 项目杀疯了&#xff01;一开源就登上了 Github Trending 榜前列&#xff0c;一天就获得将近600 star。 这个项目就是国内大模型四小龙之一面壁智能最新大打造的面壁「小钢炮」 MiniCPM-V 2.6 。它再次刷新端侧多模态天花板&#xf…

微分方程求解的三种解析方法:经典时域法(齐次解+特解,零状态+零输入),冲激响应卷积法、传递函数法

经典时域分析方法 以例题的形式对经典时域解法&#xff08;齐次解特解&#xff09;进行说明&#xff0c;最后进行总结。考虑如下形式微分方程&#xff1a; y ′ ′ ( t ) 5 y ′ ( t ) 6 y ( t ) 2 f ′ ( t ) 6 f ( t ) y\left( t \right) 5y\left( t \right) 6y\left(…

pyinstaller使用

pyinstaller 入门 Pyat5 的安装程序开发PyQt6 的安装程序开发 编写好的程序编译成可执行文件资源文件:用 zip 打包&#xff0c;基本可以压缩到 1/3 大小;然后再用 pyqt 写一个 setup 安装程序&#xff0c;安装到指定目录(安装的过程实际就是把文件解压、拷贝到指定目录、注册到…

[000-01-030].第2节 :Zookeeper本地安装

1.Zookeeper下载地址 1.Zookeeper官网地址 2.会显示Zookeeper的一些版本 2.Zookeeper本地模式安装&#xff1a; 2.1.Zookeeper安装前准备 1.在Centos7虚拟机中安装jdk8 2.2.Zookeeper安装过程&#xff1a; 1.下载zookeeper压缩版本&#xff0c;解压放在opt/moduel目录下…

虚拟人实时主持创意互动方案:赋能峰会论坛会议等活动科技互动感

随着增强现实、虚拟现实等技术的不断发展&#xff0c;“虚拟人实时主持”创意互动模式逐渐代替传统单一真人主持模式&#xff0c;虚拟主持人可以随时随地出现在不同活动现场&#xff0c;也可以同一时间在不同分会场中担任主持工作&#xff0c;在峰会、论坛、会议、晚会、发布会…

计算机网络三级笔记--原创 风远 恒风远博

典型设备中间设备数据单元网络协议物理层中继器、集线器中继器、集线器数据位(bit) binary digit二进 制数据的缩写HUB使用了光纤、 同轴电缆、双绞 线.数据链路层网卡、网桥、交换机网桥、交换机数据帧(Frame)STP、ARQ、 SW、CSMA/CD、 PPP(点对点)、 HDLC、ATM网络层路由器、…

MySQL 管理

启动及关闭 MySQL 服务器 Windows 系统下 启动 MySQL 服务器&#xff1a; 1、通过 “服务” 管理工具&#xff1a; 打开“运行”对话框&#xff08;Win R&#xff09;&#xff0c;输入 services.msc&#xff0c;找到“MySQL”服务&#xff0c;右击选择“启动”。 2、通过命…

汇量科技Mintegral发布全新产品矩阵:助力广告主高效增长与变现

近期&#xff0c;汇量科技旗下程序化互动式广告平台Mintegral正式推出全新产品命名&#xff0c;期望通过简洁明确的产品名称&#xff0c;更好地传达Mintegral的品牌理念&#xff0c;使客户与平台的每一次接触都更加直接高效。 Mintegral AppGrowth(原Mintegral Self-Service Pl…

QLabel设置图像的方法+绘制文本换行显示

1、QLabel设置图像有两种方法 (1) void setPicture(const QPicture &); (2) void setPixmap(const QPixmap &); QPicture和QPixmap都是继承于QPaintDevice&#xff0c;它们都可以通过加载图片的方式获取&#xff1a;bool load(QIODevice *dev, const char *format …