组件_基础视图
小程序的主要开发语言是 JavaScript ,小程序的开发同普通的网页 开发相比有很大的相似性。但是二者还是多少有些许区别的,例如:小程序提供了一系列的视图组件代替 html 中的标签
容器 view
视图容器,用来承载视图块,类似 div 的功能,所以要写在 wxml 视 图文件之中
我们在项目中增加一个页面 views ,并指定为默认页面
<!-- views.wxml --> <view>视图1</view> <view>视图2</view>
view 是块级元素
文本 text
文本,承载页面文本信息,类似 span 的功能
<text>文本1</text> <text>文本2</text>
text 是行内元素
图片 image
图片。支持 JPG、PNG、SVG、WEBP、GIF 等格式
<image src="../../images/1.webp"></image>
mode属性说明
<image src="../../images/1.webp" mode="heightFix"></image>
1. 在小程序中,显示文本信息应该使用的组件是:text
组件_滑块视图容器
滑块视图容器(焦点轮播图)
基本实现
我们增加一个全新的页面 swiper 来实现轮播图效果
<!-- swiper.wxml --> <view> <swiper> <swiper-item> <image src="../../images/1.png"></image> </swiper-item> <swiper-item> <image src="../../images/2.jpg"></image> </swiper-item> <swiper-item> <image src="../../images/3.jpg"></image> </swiper-item> </swiper> </view>
为了更美观,可以让图片宽度充满全屏,并保持图片不变形
<!-- swiper.wxml --> <view> <swiper class="swiper"> <swiper-item> <image mode="widthFix" src="../../images/1.png"></image> </swiper-item> <swiper-item> <image mode="widthFix" src="../../images/2.jpg"></image> </swiper-item> <swiper-item> <image mode="widthFix" src="../../images/3.jpg"></image> </swiper-item> </swiper> </view>
同时设置图片样式充满全屏,因为图片默认大小:宽度320px、高度240px
/* swiper.wxss */ image{ width: 100%; }
Swiper常用属性说明
<!-- swiper.wxml --> <view> <swiper class="swiper" indicator-dots indicator-color="#fff" indicator-active-color="#f00" autoplay interval="5000" duration="1000" circular vertical > <swiper-item> <image mode="widthFix" src="../../images/1.png"></image> </swiper-item> <swiper-item> <image mode="widthFix" src="../../images/2.jpg"></image> </swiper-item> <swiper-item> <image mode="widthFix" src="../../images/3.jpg"></image> </swiper-item> </swiper> </view>
属性值来源于逻辑文件
我们可以在逻辑文件 swiper.js 中动态配置属性值
// news.js Page({ data: { swiperOptions:{ indicatorDots:true, indicatorColor:"#fff", indicatorActiveColor:"#f00", autoplay:true, interval:5000, duration:1000, circular:true, vertical:true } } })
<!-- swiper.wxml --> <view> <swiper class="swiper" indicator-dots="{{ swiperOptions.indicatorDots }}" indicator-color="{{ swiperOptions.indicatorColor }}" indicator-active-color="{{ swiperOptions.indicatorActiveColor }}" autoplay="{{ swiperOptions.autoplay }}" interval="{{ swiperOptions.interval }}" duration="{{ swiperOptions.duration }}" circular="{{ swiperOptions.circular }}" vertical="{{ swiperOptions.vertical }}" > <swiper-item> <image mode="widthFix" src="../../images/1.png"></image> </swiper-item> <swiper-item> <image mode="widthFix" src="../../images/2.jpg"></image> </swiper-item> <swiper-item> <image mode="widthFix" src="../../images/3.jpg"></image> </swiper-item> </swiper> </view>
1. 在小程序中,下列那个属性可以设置滑块视图容器自动滚动:autoplay
组件_滚动视图区域
可滚动视图区域。可实现容器内元素水平和垂直方向滚动
水平滚动
给容器设置 scroll-x ,可实现水平滚动
<!-- scroll.wxml --> <view> <scroll-view class="scroll-view_H" scroll-x="true"> <view class="scroll-view-item demo-text-1"></view> <view class="scroll-view-item demo-text-2"></view> <view class="scroll-view-item demo-text-3"></view> </scroll-view> </view>
当然要配合样式实现
/* scroll.wxss */ .scroll-view_H{ /* 规定容器内元素不进行换行 */ white-space: nowrap; } .scroll-view-item { display: inline-block; width: 100%; height: 300rpx; } .demo-text-1{ background-color: red; } .demo-text-2{ background-color: green; } .demo-text-3{ background-color: blue; }
垂直滚动
给容器设置 scroll-y ,可实现垂直滚动
<!-- scroll.wxml --> <view> <scroll-view class="scroll-view_V" scroll-y="true"> <view class="scroll-view-item demo-text-1"></view> <view class="scroll-view-item demo-text-2"></view> <view class="scroll-view-item demo-text-3"></view> </scroll-view> </view>
当然要配合样式实现
/* scroll.wxss */ .scroll-view-item { width: 100%; height: 300rpx; } .demo-text-1{ background-color: red; } .demo-text-2{ background-color: green; } .demo-text-3{ background-color: blue; } .scroll-view_V{ height: 300rpx; }
常用属性
<view> <!-- 水平滚动 --> <scroll-view refresher-enabled scroll-left="50" class="scroll-view_H" scroll-x="true"> <view class="scroll-view-item demo-text-1"></view> <view class="scroll-view-item demo-text-2"></view> <view class="scroll-view-item demo-text-3"></view> </scroll-view> <!-- 垂直滚动 --> <scroll-view refresher-enabled scroll-top="50" class="scroll-view_V" scroll-y="true"> <view class="scroll-view-item demo-text-1"></view> <view class="scroll-view-item demo-text-2"></view> <view class="scroll-view-item demo-text-3"></view> </scroll-view> </view>
1. 在小程序中,下列那个属性可以设置滚动视图容器垂直方向滚动:scroll-y
组件_icon
图标组件,其实就是字体图标效果,但是这里所提供的只有最常用的几个
图标使用
<icon type="success"></icon>
字体图标属性
<icon type="success" size="50" color="red"></icon> <icon type="success_no_circle" size="50"></icon> <icon type="info" size="50"></icon> <icon type="warn" size="50"></icon> <icon type="waiting" size="50"></icon> <icon type="cancel" size="50"></icon> <icon type="download" size="50"></icon> <icon type="search" size="50"></icon> <icon type="clear" size="50"></icon>
1. 在小程序中,下列那个属性可以设置字体图标为搜索:search
组件_progress
基本进度条
<progress percent="20"/>
属性说明
<progress percent="20"/> <progress percent="20" show-info/> <progress percent="20" show-info font-size="30"/> <progress percent="20" show-info font-size="30" stroke-width="20"/> <progress percent="20" border-radius="5"/> <progress percent="20" border-radius="5" activeColor="#f00"/> <progress percent="20" border-radius="5" activeColor="#f00" backgroundColor="#00f"/> <progress percent="20" border-radius="5" activeColor="#f00" backgroundColor="#00f" active/> <progress percent="20" border-radius="5" activeColor="#f00" backgroundColor="#00f" active duration="90"/>
1. 在小程序中,设置进度条组件的进度条,进度增加的时间是:duration
组件_表单
表单,将用户输入的信息提交到服务器
小程序的表单与 html 的表单基本一致
登录页面
创建一个登陆页面 login ,在 login.wxml 中实现基本结构
<view class="login"> <form> <input placeholder="请输入用户名" /> <input placeholder="请输入密码" /> <button type="primary">登录</button> </form> </view>
为了美观,我们需要在 login.wxss 文件中添加样式
.login{ margin-top: 100rpx; } input{ border: 1px solid #999; border-radius: 5px; margin: 10px; padding-left: 10px; height: 70rpx; }
1. 在微信小程序中,下列不属于表单元素的是:image