小程序开发设计-小程序的宿主环境:组件⑦

上一篇文章导航:

小程序开发设计-小程序的宿主环境:宿主环境简介⑥-CSDN博客icon-default.png?t=O83Ahttps://blog.csdn.net/qq_60872637/article/details/142425131?spm=1001.2014.3001.5501

注:不同版本选项有所不同,并无大碍。

1.小程序中组件的分类:

小程序中的组件也是由宿主环境提供的,开发者可以基于组件快速搭建出漂亮的页面结构。官方把小程序的组件分为了9大类,分别是:

①视图容器:view、scroll-view、swiper和swiper-item

②基础内容

③表单组件

④导航组件

⑤媒体组件

⑥map地图组件

⑦canvas画布组件

⑧开放能力

⑨无障碍访问

①常见的视图容器类组件:

Ⅰ.各视图容器类组件基本介绍:

view:

·普通视图区域。

·类似于HTML中的div,是一个块级元素。

·常用来实现页面的布局效果。

scroll-view:

·可滚动的视图区域。

·常用来实现滚动列表效果。

swiper和swiper-item:

·轮播图容器组件和轮播图item组件。

轮播图外面是一个容器,就是swiper组件;里面每一个可以轮播的item项就是通过swiper-item实现。

Ⅱ.常见的视图容器类组件的基本使用:

-view组件的基本使用:

实现如图的flex横向布局效果:

具体操作:

在list文件夹下实现该操作:

pages->list->list.wxml:页面结构对应的文件

pages->list->list.wxss:页面样式对应的表文件

list.wxml:
<!--pages/list/list.wxml-->
<view class='container1'><view>A</view><view>B</view><view>C</view>
</view>
list.wxss:
/* pages/list/list.wxss */
.container1 view{width: 100px;height: 100px;text-align: center;line-height: 100px;
}
.container1 view:nth-child(1){background-color: lightblue;
}
.container1 view:nth-child(2){background-color: lightcoral;
}
.container1 view:nth-child(3){background-color: lightgoldenrodyellow;
}.container1{//类名选择器display: flex;//横向justify-content: space-around;//分散布局
}

-scroll-view组件的基本使用:

实现如图的纵向滚动效果:

具体操作:

横向滚动:限制宽度

<scroll-view class="container1" scroll-y>...</scroll-view>

纵向滚动:限制高度

<scroll-view class="container1" scroll-x>...</scroll-view>

list.wxml:
<!--pages/list/list.wxml-->
<scroll-view class='container1' scroll-y><view>A</view><view>B</view><view>C</view>
</scroll-view>
list.wxss:
/* pages/list/list.wxss */
.container1 view{width: 100px;height: 100px;text-align: center;line-height: 100px;
}
.container1 view:nth-child(1){background-color: lightblue;
}
.container1 view:nth-child(2){background-color: lightcoral;
}
.container1 view:nth-child(3){background-color: lightgoldenrodyellow;
}.container1{border:1px solid red;width:100px;height:120px;
}

-swiper和swiper-item组件的基本使用:

实现轮播图效果:

具体操作:

放一个轮播图组件代表一个轮播图容器,里面有几张图就需要几个swiper-item。

swiper.wxml:
<!--pages/list/list.wxml-->
<!--轮播图的结构-->
<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>
swiper.wxss:
/* pages/list/list.wxss */.swiper-container{height: 150px; 
}.item{height: 100%;line-height: 150px;text-align: center;
}swiper-item:nth-child(1) .item{background-color: lightpink;
}
swiper-item:nth-child(2) .item{/*必须有空格否则颜色不对*/background-color: lightsalmon;
}
swiper-item:nth-child(3) .item{background-color: lightskyblue;
}

Ⅲ.swiper组件的常用属性:

如果需要直接在<swiper class="swiper-container"后面添加内容即可。
<!--pages/list/list.wxml-->
<!--轮播图的结构-->
<swiper class="swiper-container" indicator-dots indicator-color="white" indicator-active-color="grey" autoplay interval="3000" circular><!--第一个轮播图--><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>

②基础内容组件:

Ⅰ.基础内容组件基本介绍:

text:

·文本组件

·类似于html中的span标签,是一个行内元素。

rich-text:

·富文本组件

·支持把html字符串渲染为wxml结构。

Ⅱ.基础内容组件基本使用:

-text组件的基本使用:

通过text组件的selectable属性,实现长按选中文本内容的效果。

只能使用text组件,不能使用view组件。如果把文本放在view中,不支持长按选中的效果。

具体操作:

list.wxml:
<!--常用的基础内容组件text和rich-text的用法-->
<view>手机号支持长按选中效果<text selectable>12345678901</text>
</view>

-rich-text组件的基本使用:

商品详情页可能会用到该组件。

通过rich-text组件的nodes属性节点,把html字符串渲染为对应的UI结构

具体操作:

list.wxml:
<!--常用的基础内容组件text和rich-text的用法-->
<!--应用场景:商品详情页的结构渲染-->
<rich-text nodes="<h1 style='color:red;'>标题</h1>"></rich-text>

③其他常用组件:

Ⅰ.其他常用组件的基本介绍:

button:

·按钮组件

·功能比html中的button按钮丰富

·通过open-type属性可以调用微信提供的各种功能(客服、转发、获取用户授权、获取用户信息等)

image:

·图片组件。

·image组件默认宽度约300px、高度约240px。

navigation:

·页面导航组件。

·类似于html中的a链接。

Ⅱ.其他常用组件的基本使用:

-button组件的基本使用:

·按钮默认占一行。

·小一点的按钮,横向排列的按钮。

若要使用旧版的按钮样式,则将app.json里的 "style": "v2",删除。若要使用新版的按钮样式,则在app.json中添加 "style": "v2",即可。

list.wxml:
<!--button按钮组件的基本使用-->
<!--通过type属性指定按钮颜色类型-->
<button>默认按钮</button>
<button type='primary'>主色调按钮</button>
<button type="warn">警告按钮</button>
<!--size=“mini”小尺寸按钮-->
<button size="mini">默认按钮</button>
<button type='primary' size="mini">主色调按钮</button>
<button type="warn" size="mini">警告按钮</button>
<!--plain镂口按钮-->
<button size="mini" plain>默认按钮</button>
<button type='primary' size="mini" plain>主色调按钮</button>
<button type="warn" size="mini" plain>警告按钮</button>

-image组件的基本使用:

list.wxml:
<!--image图片组件-->
<image></image>
<!--使用src指向图片路径--><image src="/images/image1.jpg">
</image>
list.wxss:
/* pages/list/list.wxss */
image{/*通过边框线证明image有默认的宽和高*/border: 1px solid lightskyblue;
}

默认情况下第二张图片有些变形,由image里的mode属性导致。

image里的mode属性用来指定图片的裁剪缩放模式,常用的mode属性值如下:

list.wxml:
<!--image图片组件-->
<image></image>
<!--使用src指向图片路径-->
<image src="/images/image1.jpg" mode="aspectFit">
</image>

2.API:

Ⅰ.小程序API概述:

小程序的API是由宿主环境提供的,通过这些丰富的小程序API,开发者可以方便的调用微信提供的能力,例如:获取用户信息、本地存储、支付功能等。

Ⅱ.小程序中API的三大分类:

小程序官方把API分为了如下3大类:

①事件监听API

·特点:以on开头,用来监听某些事件的触发

·举例:wx.onWindowResize(function callback)监听窗口尺寸变化的事件。

注:wx不用声明就能用来全局调用,就像浏览器中的window。

②同步API

·特点1:以Sync结尾的API都是同步API。

·特点2:同步API的执行结果,可以通过函数返回值直接获取,如果执行出错会抛出异常。

·举例:wx.setStorageSync('key','value')向本地存储中写入内容。

③异步API

·特点:类似于jQuery中的$.ajax(options)函数,需要通过suxxess、fail、complete接受调用的结果。

·举例:wx.request()发起网络数据请求,通过success回调函数接收数据。

下一篇文章导航:

本系列文章持续更新中...

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

如若内容造成侵权/违法违规/事实不符,请联系一条长河网进行投诉反馈,一经查实,立即删除!

相关文章

深度学习(1):基础概念与创建项目

文章目录 基础概念创建项目1.在Anaconda上创建序虚拟环境2.创建PyProject3.创建完成 基础概念 CPU&#xff08;中央处理器&#xff09; CPU 是计算机的核心部件&#xff0c;负责执行计算和逻辑操作。它按照指令序列进行任务处理&#xff0c;擅长处理串行任务。CPU 的性能直接…

【MyBatis 源码拆解系列】MyBatis 运行原理 - 读取 xml 配置文件

欢迎关注公众号&#xff08;通过文章导读关注&#xff1a;【11来了】&#xff09;&#xff0c;持续 分享大厂系统设计&#xff01; 在我后台回复 「资料」 可领取编程高频电子书&#xff01; 在我后台回复「面试」可领取硬核面试笔记&#xff01; 文章导读地址&#xff1a;点击…

Nature:科研论文中正确使用ChatGPT的三个原则

我是娜姐 迪娜学姐 &#xff0c;一个SCI医学期刊编辑&#xff0c;探索用AI工具提效论文写作和发表。 美国科罗拉多大学安舒茨医学院的生物医学信息学研究员Milton Pividori&#xff0c;一直在探索如何将ChatGPT等AI工具该技术融入课题组日常科研任务&#xff0c;例如进行文献综…

远程升级不成功?背后“凶手”可能是模组差分包…

最近有客户反馈在乡村里频繁出现掉线的情况。通过换货、换SIM卡对比排查测试&#xff0c;发现只有去年某批采购的那批模块在客户环境附近会出现掉线的情况&#xff0c;而今年采购的模块批次就不会掉线&#xff0c;很奇怪。 这个出问题的模块&#xff0c;就是合宙4G-Cat.1低功耗…

01.前端面试题之ts:说说如何在Vue项目中应用TypeScript?

文章目录 一、前言二、使用Componentcomputed、data、methodspropswatchemit 三 、总结 一、前言 与link类似 在VUE项目中应用typescript&#xff0c;我们需要引入一个库vue-property-decorator&#xff0c; 其是基于vue-class-component库而来&#xff0c;这个库vue官方推出…

数据驱动农业——农业中的大数据革命

橙蜂智能公司致力于提供先进的人工智能和物联网解决方案&#xff0c;帮助企业优化运营并实现技术潜能。公司主要服务包括AI数字人、AI翻译、埃域知识库、大模型服务等。其核心价值观为创新、客户至上、质量、合作和可持续发展。 橙蜂智农的智慧农业产品涵盖了多方面的功能&…

静态链接和动态链接的Golang二进制文件

关注TechLead&#xff0c;复旦博士&#xff0c;分享云服务领域全维度开发技术。拥有10年互联网服务架构、AI产品研发经验、团队管理经验&#xff0c;复旦机器人智能实验室成员&#xff0c;国家级大学生赛事评审专家&#xff0c;发表多篇SCI核心期刊学术论文&#xff0c;阿里云认…

抖音截流神器发布:不限量评论采集,实时推送,提升运营效率

在短视频风靡的今天&#xff0c;抖音成为品牌营销的新战场。如何在海量内容中脱颖而出&#xff0c;提升运营效率成为关键。本文将揭秘一款革命性的抖音运营工具&#xff0c;它不仅支持不限量评论采集&#xff0c;还实现了实时推送功能&#xff0c;助力运营者精准把握用户反馈&a…

保姆级 Stable Diffusion 教程,看完这篇就够了!

在美国科罗拉多州举办了一场新兴数字艺术家竞赛&#xff0c;一幅名为《太空歌剧院》的作品获得“数字艺术/数字修饰照片”类别的一等奖&#xff0c;神奇的是&#xff0c;该作品的作者并没有绘画基础&#xff0c;这幅画是他用 AI 生成的。 这让人们充分见识到AI 在绘画领域惊人的…

Shell实战(一)

Shell实战&#xff08;一&#xff09; 导语程序实例解压缩交互功能描述代码和运行结果实现解析 监视CPU和内存功能描述代码和运行结果实现解析 用户管理功能描述代码和运行结果实现解析 总结 导语 本篇引入三个书上的shell程序设计项目&#xff0c;由于书上的版本较老&#xf…

异构AI算力资源池:智能世界的新型基础设施

随着人工智能技术的飞速发展&#xff0c;AI应用对计算资源的需求日益增长。然而&#xff0c;传统的同构计算资源池无法满足AI应用对计算能力、能耗和成本的多样化需求。为此&#xff0c;异构AI算力资源池应运而生&#xff0c;成为未来智能世界的重要基础设施。 背 景 人工智能…

H3C交换机手动释放DHCP地址

原本的的配置&#xff0c;释放时间10天 导致所有的地址都被使用完 释放了地址池的地址 重新调整了超期时间为8小时

游戏行业数据集成“利器”

《黑神话&#xff1a;悟空》自公布以来&#xff0c;便在游戏界引起了巨大的轰动。这款游戏以其精湛的画面、精彩的剧情和深度的玩法&#xff0c;让无数玩家充满期待。而在其背后&#xff0c;游戏开发者们面临着诸多挑战&#xff0c;其中之一便是数据的集成与管理。竞争激烈的游…

【C++ Primer Plus习题】17.3

大家好,这里是国中之林! ❥前些天发现了一个巨牛的人工智能学习网站&#xff0c;通俗易懂&#xff0c;风趣幽默&#xff0c;忍不住分享一下给大家。点击跳转到网站。有兴趣的可以点点进去看看← 问题: 解答: #include <iostream> #include <fstream> using namesp…

LeetCode Hot100 C++ 哈希 49.字母异位词分组

给你一个字符串数组&#xff0c;请你将 字母异位词 组合在一起。可以按任意顺序返回结果列表。 字母异位词 是由重新排列源单词的所有字母得到的一个新单词。 给你一个字符串数组&#xff0c;请你将 字母异位词 组合在一起。可以按任意顺序返回结果列表。 字母异位词 是由重新排…

2-99 基于matlab多尺度形态学提取眼前节组织

基于matlab多尺度形态学提取眼前节组织&#xff0c;通过应用不同尺度的结构元素进行边缘检测&#xff0c;再通过加权融合的思想来整合检测到的边缘&#xff0c;降低图像噪声的影响&#xff0c;提高边缘检测的精度。程序已调通&#xff0c;可直接运行。 下载源程序请点链接&…

线程的状态及join()插队方法

一、线程的状态 线程整个生命周期中有6种状态&#xff0c;分别为 NEW 新建状态 、RUNNABLE 可运行状态、TERMINATED 终止状态、TIMED_WAITING计时等待状态、WAITING 等待状态、BLOCKED 阻塞状态 线程各个状态之间的转换&#xff1a; 在 JAVA 程序中&#xff0c;一个线程对象通过…

200Kg大载重多旋翼无人机应用前景详解

大载重多旋翼无人机是一类具备高载重能力和长航时特点的无人机系统&#xff0c;它们融合了多旋翼无人机的灵活性与大载重无人机的实用性&#xff0c;广泛应用于多个领域。 1. 航拍与影视制作 在航拍与影视制作领域&#xff0c;200Kg大载重多旋翼无人机凭借其出色的稳定性和载重…

维信诺三年半亏损近85亿:股价今年跌超四成,550亿大手笔投资8.6代

《港湾商业观察》施子夫 在显示面板领域知名度颇高的维信诺&#xff08;002387.SZ&#xff09;还是交出了持续亏损的半年报。从近些年财务数据上看&#xff0c;亏损似乎已经成为了公司甩不掉的包袱。 在盈利能力并不如预期的情况下&#xff0c;维信诺也对外释放要550亿扩产能…

图片切换示例【JavaScript】

在 JavaScript 中实现图片切换可以通过多种方法&#xff0c;下面是一个简单的示例&#xff0c;使用 HTML、CSS 和 JavaScript 来实现图片的切换效果。 实现效果&#xff1a; 代码&#xff1a; <!DOCTYPE html> <html lang"zh"><head><meta c…