图篇标签,image组件默认宽度320px、长度240px
支持懒加载
属性:
属性名类型默认值说明srcString图片资源地址modeString'scaleToFill'图片裁剪、缩放的模式lazy-loadBooleanfalse图片懒加载mode 属性有效值:mode 有 13 种模式,其中 4 种是缩放模式,9种是裁剪模式。
模式值说明缩放scaleToFill 不保持纵横比缩放图片,使图片的宽度完全拉伸至填满 image 元素aspectFit 保持纵横比缩放图片,使图片的长边能完全显示出来。aspectFill保持纵横比缩放图片,只保证图片的短边能完全显示出来。widthFix宽度不变,高度自动变化,保持原图宽度比不变裁剪top不缩放图片,只显示图片的顶部区域bottom不缩放图片,只显示图片的底部区域center不缩放图片,只显示图片的中间区域left不缩放图片,只显示图片的左边区域right不缩放图片,只显示图片的右边区域top left不缩放图片,只显示图片的左上边区域top right不缩放图片,只显示图片的右上边区域bottom left不缩放图片,只显示图片的左下边区域bottom right不缩放图片,只显示图片的右下边区域微信内置轮播图组件
默认宽度 100% 高度 150px
属性:
属性名类型默认值说明indicator-dotsBooleanfalse是否显示面板指示点indicator-colorColorrgba(0, 0, 0, .3)指示点颜色indicator-active-colorColor#000000 当前选中的指示点颜色autoplay Booleanfalse是否自动切换interval Number5000自动切换时间间隔circularBooleanfalse是否循环轮播swiper-item:滑块,默认宽度和高度都是100%
富文本标签
可以将字符串解析成对应标签,类似 vue中 v--html 功能
// 1 index.wxml 加载 节点数组 <rich-text nodes="{{nodes}}" bindtap="tap"></rich-text> // 2 加载 字符串 <rich-text nodes='<img src="https://developers.weixin.qq.com/miniprogram/assets/images/head_global_z_@all.p ng" alt="">'></rich-text> Page({ data: { nodes: [{ name: 'div', attrs: { class: 'div_class', style: 'line-height: 60px; color: red;' }, children: [{ type: 'text', text: 'Hello World!' }] }] }, tap() { console.log('tap') } })nodes属性:支持字符串 和 标签节点数组
属性名说明类型必填备注name标签名string是支持部分受信任的 HTML 节点attrs属性object否支持部分受信任的属性,遵循 Pascal 命名法children子节点列表array否结构和 nodes 一致文本节点:type = text
属性名说明类型必填备注text文本string是支持 entities注意: a. nodes 不推荐使用 String 类型,性能会有所下降。 b. rich–text 组件内屏蔽所有节点的事件。 c. attrs 属性不支持 id ,支持 class 。 d. name 属性大小写不敏感。 e. 如果使用了不受信任的 HTML 节点,该节点及其所有子节点将会被移除。 f. img 标签仅支持网络图片。
代码示例:
<button type="default" size="{{defaultSize}}" loading="{{loading}}" plain="{{plain}}"> default </button>属性:
属性名类型默认值必填说明sizestringdefault否按钮的大小typestringdefault按钮的样式类型plainbooleanfalse按钮是否镂空,背景色透明disabledbooleanfalse是否禁⽤loadingbooleanfalse名称前是否带 loading 图标form-typestring用于 `` 组件,点击分别会触发 `` 组件的submit/reset 事件open-typestringdefault微信开放能力size 属性的合法值
值说明default默认大小mini小尺寸type 的合法值
值说明primary绿色default白色warn红色form-type 的合法值
值说明submit提交表单reset重置表单open-type 的合法值
值说明contact打开客服会话,如果用户在会话中点击消息卡片后返回小程序,可以从bindcontact 回调中获得具体信息,具体说明share触发用户转发,使用前建议先阅读使用指引getPhoneNumber获取用户手机号,可以从bindgetphonenumber回调中获取到用户信息,具体说明getUserInfo获取用户信息,可以从bindgetuserinfo回调中获取到用户信息launchApp打开APP,可以通过app-parameter属性设定向APP传的参数具体说明openSetting打开授权设置⻚feedback打开“意见反馈”页面,用户可提交反馈内容并上传日志,开发者可以登录小程序管理后台后进入左侧菜单“客服反馈”页面获取到反馈内容open-type 的 contact的实现流程 a. 将小程序 的 appid 由测试号改为自己的 appid b. 登录微信小程序官网,添加 客服 – 微信 c. 为了方便演示,先准备两个微信账号 d. 普通用户 A e. 客服-微信 B
属性:
属性名类型默认值必填说明typestring是icon的类型,有效值:success,、success_no_circle、info、warn、waiting、cancel、download、search、clearsizenumber / string23否icon的大小colorstring否icon的颜色,同css的color展示:
代码:
Page({ data: { iconSize: [20, 30, 40, 50, 60, 70], iconType: [ 'success', 'success_no_circle', 'info', 'warn', 'waiting', 'cancel','download', 'search', 'clear' ], iconColor: [ 'red', 'orange', 'yellow', 'green', 'rgb(0,255,255)', 'blue', 'purple' ], } }) <view class="group"> <block wx:for="{{iconSize}}"> <icon type="success" size="{{item}}"/> </block> </view> <view class="group"> <block wx:for="{{iconType}}"> <icon type="{{item}}" size="40"/> </block> </view> <view class="group"> <block wx:for="{{iconColor}}"> <icon type="success" size="40" color="{{item}}"/> </block> </view>类似于页面,一个自定义组件由 json wxml wxss js 4个文件组成
可以在微信开发者工具中快速创建组件的文件结构
在文件夹内 components/myHeader ,创建组件 名为 myHeader
声明组件:首先需要在组件的 json 文件中进行自定义组件声明
{ "component": true }编辑组件:同时,还要在组件的 wxml 文件中编写组件模板,在 wxss 文件中加入组件样式,slot 表示插槽,类似vue中的slot
<!-- 这是自定义组件的内部WXML结构 --> <view class="inner"> {{innerText}} <slot></slot> </view>. 注册组件:在组件的 js 文件中,需要使用 Component() 来注册组件,并提供组件的属性定义、内部数据和 自定义方法
Component({ properties: { // 这里定义了innerText属性,属性值可以在组件使用时指定 innerText: { // 期望要的数据是 string类型 type: String, value: 'default value', } }, data: { // 这里是一些组件内部数据 someData: {} }, methods: { // 这里是一个自定义方法 customMethod: function(){} } })分为应用生命周期和页面生命周期
应用生命周期:
属性类型必填说明onLaunch function否监听小程序初始化。onShow 监听小程序启动或切前台onHide监听小程序切后台onError 错误监听函数onPageNotFound页面不存在监听函数页面声明周期:
属性类型说明dataObject页面的初始数据onLoadfunction生命周期回调—监听页面加载onShow 生命周期回调—监听页面显示onReady 生命周期回调—监听页面初次渲染完成onHide生命周期回调—监听页面隐藏onUnload 生命周期回调—监听页面卸载onPullDownRefresh 监听用户下拉动作onReachBottom页面上拉触底事件的处理函数onShareAppMessage 用户点击右上角转发onPageScroll页面滚动触发事件的处理函数onResize 页面尺寸改变时触发,详见 响应显示区域变化onTabItemTap 当前是 tab 页时,点击 tab 时触发页面生命周期图解
