API wx.on开头的API是监听某个事件发生的API接口,接受一个CALLBACK函数作为参数。当赶事件触发时,会调用CALLBACK函数
没有特殊说明,其他API都接受一个OBJECT作为参数,OBJECT中可以指定success,fail,complete来接收接口调用结果。
一、网络
1、发起请求
wx.request(OBJECT)发起的是HTTPS请求(一个微信小程序同时只能有5个网络请求连接)
【微信小程序|微信小程序学习笔记(9)--------API】OBJECT参数说明:
header:设置请求的header,header中不能设置Referer
2、文件上传与下载
wx.uploadFile(OBJECT)上传文件
wx.downloadFile(OBJECT)下载文件
3、WebSocket
wx.connectSocket(OBJECT):创建一个WebSocket连接;一个微信小程序同时只能有一个WebSorcket连接,如果当前已存在一个WebSocket连接,会自动关闭该连接,并重新创建一个Web Socket连接。
wx.onSocketOpen(CALLBACK):监听WebSocket连接打开事件。
wx.onSocketError(CALLBACK):监听WebSocket错误。
wx.sendSocketMessage(OBJECT):通过 WebSocket 连接发送数据,需要先wx.connectSocket,并在 wx.onSocketOpen 回调之后才能发送。
wx.onSocketMessage(CALLBACK):监听WebSocket接受到服务器的消息事件。
wx.closeSocket():关闭WebSocket连接。
wx.onSocketClose(CALLBACK):监听WebSocket关闭。
二、媒体
1、图片
wx.chooseImage(OBJECT):从本地相册选择图片或使用相机拍照。
OBJECT参数说明:
sizeType : original 原图,compressed 压缩图,默认二者都有
sourceType: album 从相册选图,camera 使用相机,默认二者都有
wx.previewImage(OBJECT):预览图片。
wx.getImageInfo(OBJECT):获取图片信息
2、录音
wx.startRecord(OBJECT):开始录音。当主动调用wx.stopRecord,或者录音超过1分钟时自动结束录音,返回录音文件的临时文件路径。
wx.stopRecord():主动调用停止录音
3、音频
wx.playVoice(OBJECT):开始播放语音,同时只允许一个语音文件正在播放,如果前一个语音文件还没播放完,将中断前一个语音播放。
wx.pauseVoice():暂停正在播放的语音。再次调用wx.playVoice播放同一个文件时,会从暂停处开始播放。如果想从头开始播放,需要先调用 wx.stopVoice。
wx.stopVoice():结束播放语音。
4、音乐播放
wx.getBackgroundAudioPlayerState(OBJECT):获取音乐播放状态。
wx.playBackgroundAudio(OBJECT):播放音乐,同时只能有一首音乐正在播放。
wx.pauseBackgroundAudio();
暂停播放音乐。
wx.seekBackgroundAudio(OBJECT):控制音乐播放进度。
wx.stopBackgroundAudio():停止播放音乐。
wx.onBackgroundAudioPlay(CALLBACK):监听音乐播放。
wx.onBackgroundAudioPause(CALLBACK):监听音乐暂停。
wx.onBackgroundAudioStop(CALLBACK):监听音乐停止。
5、文件
wx.saveFile(OBJECT):保存文件到本地。
wx.getSavedFileList(OBJECT):获取本地已保存的文件列表
wx.getSavedFileInfo(OBJECT):获取本地文件的文件信息
wx.removeSavedFile(OBJECT):删除本地存储的文件
wx.openDocument(OBJECT):新开页面打开文档,支持格式:doc, xls, ppt, pdf, docx, xlsx, pptx
6、视频
wx.chooseVideo(OBJECT):拍摄视频或从手机相册中选视频,返回视频的临时文件路径。
7、音频组件控制
wx.createAudioContext(audioId):创建并返回 audio 上下文 audioContext 对象
audioContext:audioContext 通过 audioId 跟一个 audio 组件绑定,通过它可以操作一个 audio 组件。
8、视频组件控件
wx.createVideoContext(videoId):创建并返回 video 上下文 videoContext 对象
videoContext:videoContext 通过 videoId 跟一个 video 组件绑定,通过它可以操作一个 video 组件。
三、数据
wx.setStorage(OBJECT):将数据存储在本地缓存中指定的 key 中,会覆盖掉原来该 key 对应的内容,这是一个异步接口。
wx.setStorageSync(KEY,DATA):将 data 存储在本地缓存中指定的 key 中,会覆盖掉原来该 key 对应的内容,这是一个同步接口。
wx.getStorage(OBJECT):从本地缓存中异步获取指定 key 对应的内容。
wx.getStorageSync(KEY):从本地缓存中同步获取指定 key 对应的内容。
wx.getStorageInfo(OBJECT):异步获取当前storage的相关信息
wx.getStorageInfoSync:同步获取当前storage的相关信息
wx.removeStorage(OBJECT):从本地缓存中异步移除指定 key 。
wx.removeStorageSync(KEY):从本地缓存中同步移除指定 key 。
wx.clearStorage():清理本地数据缓存。
wx.clearStorageSync():同步清理本地数据缓存
四、位置
wx.getLocation(OBJECT):获取当前的地理位置、速度。
wx.chooseLocation(OBJECT):打开地图选择位置
wx.openLocation(OBJECT):使用微信内置地图查看位置
五、设备
1、网络状态
wx.getNetworkType(OBJECT):获取网络类型。
2、获取系统信息
wx.getSystemInfo(OBJECT):获取系统信息。
wx.getSystemInfoSync():获取系统信息同步接口
3、获取重力感应
wx.onAccelerometerChange(CALLBACK):监听重力感应数据,频率:5次/秒
4、罗盘
wx.onCompassChange(CALLBACK):监听罗盘数据,频率:5次/秒
5、拨打电话
wx.makePhoneCall(OBJECT)
六、界面
1、交互反馈
wx.showToast(OBJECT):显示消息提示框
wx.hideToast():隐藏消息提示框
wx.showModal(OBJECT):显示模态弹窗
wx.showActionSheet(OBJECT):显示操作菜单
2、导航和导航条
wx.setNavigationBarTitle(OBJECT):动态设置当前页面的标题。
wx.showNavigationBarLoading():在当前页面显示导航条加载动画。
wx.hideNavigationBarLoading():隐藏导航条加载动画。
wx.navigateTo(OBJECT):保留当前页面,跳转到应用内的某个页面,使用wx.navigateBack可以返回到原页面。
注意:为了不让用户在使用小程序时造成困扰,我们规定页面路径只能是五层,请尽量避免多层级的交互方式。
wx.redirectTo(OBJECT):关闭当前页面,跳转到应用内的某个页面。
wx.navigateBack(OBJECT):关闭当前页面,返回上一页面或多级页面。可通过 getCurrentPages() 获取当前的页面栈,决定需要返回几层。
3、动画
动画的基本使用
wx.createAnimation(OBJECT):创建一个动画实例animation。调用实例的方法来描述动画。最后通过动画实例的export方法导出动画数据传递给组件的animation属性。
注意: export 方法每次调用后会清掉之前的动画操作
旋转动画
文章图片
缩放动画
文章图片
偏移动画
文章图片
倾斜动画
文章图片
矩阵变形
文章图片
动画队列
调用动画操作方法后要调用 step() 来表示一组动画完成,可以在一组动画中调用任意多个动画方法,一组动画中的所有动画会同时开始,一组动画完成后才会进行下一组动画。step 可以传入一个跟 wx.createAnimation() 一样的配置参数用于指定当前组动画的配置。
4、绘画
cavans及context详解
wx.createContext():创建并返回绘图上下文context对象。
Context:context只是一个记录方法调用的容器,用于生成记录绘制行为的actions数组。context跟不存在对应关系,一个context生成画布的绘制动作数组可以应用于多个。
方法:
scale:在调用scale方法后,之后创建的路径其横纵坐标会被缩放。多次调用scale,倍数会相乘。
rotate:以原点为中心,原点可以用 translate方法修改。顺时针旋转当前坐标轴。多次调用rotate,旋转的角度会叠加。
translate:对当前坐标系的原点(0, 0)进行变换,默认的坐标系原点为页面左上角。
clearRect:清除画布上在该矩形区域内的内容。
drawImage:绘制图像,图像保持原始尺寸。
fillText:在画布上绘制被填充的文本。
beginPath:开始创建一个路径,需要调用fill或者stroke才会使用路径进行填充或描边。同一个路径内的多次setFillStyle、setStrokeStyle、setLineWidth等设置,以最后一次设置为准。
closePage:关闭一个路径。
moveTo:把路径移动到画布中的指定点,不创建线条。
lineTo:在当前位置添加一个新点,然后在画布中创建从该点到最后指定点的路径。
rect:添加一个矩形路径到当前路径。
arc:添加一个弧形路径到当前路径,顺时针绘制。
quadraticCurveTo:创建二次贝塞尔曲线路径。
bezierCurveTo:创建三次方贝塞尔曲线路径。
setFillStyle:设置纯色填充。
setStrokeStyle:设置纯色描边
setGlobalAlpha:设置全局画笔透明度。
setShadow:设置阴影样式。
setFontSize:设置字体的字号。
setLineWidth:设置线条的宽度。
setLineCap:设置线条的结束端点样式。
setLineJoin:设置两条线相交时,所创建的拐角类型。
setMiterLimit:设置最大斜接长度,斜接长度指的是在两条线交汇处内角和外角之间的距离。 当 setLineJoin为 miter 时才有效。超过最大倾斜长度的,连接处将以 lineJoin 为 bevel 来显示
三、开放接口
推荐阅读
- 前端|前端 折叠面板 折叠展开动画
- 微信小程序模拟购物界面联动
- 仿得物微信小程序(动手就会
- 小程序|ssm基于微信小程序旅游管理系统——计算机毕业设计
- 微信小程序|微信小程序中使用vant框架,方法步骤清晰,简单适用
- 微信小程序APP生命周期
- uni-app微信小程序入门
- appium微信小程序
- (uniapp和)微信小程序页面跳转首页报错(navigateTo:fail can not navigateTo a tabbar page)