小程序常用api 收集

1,177 阅读13分钟

● 音频
wx.createInnerAudioContext()
基础库 1.6.0 开始支持,低版本需做兼容处理。
以 Promise 风格 调用:不支持; 小程序插件:支持,需要小程序基础库版本不低于 1.9.6;
创建内部 audio 上下文 InnerAudioContext 对象。
developers.weixin.qq.com/miniprogram…

wx.setInnerAudioOption(Object object)
基础库 2.3.0 开始支持,低版本需做兼容处理。
以 Promise 风格 调用:支持; 小程序插件:支持,需要小程序基础库版本不低于 2.10.0;
设置 InnerAudioContext 的播放选项。设置之后对当前小程序全局生效。
developers.weixin.qq.com/miniprogram…

● 网络
wx.getNetworkType(Object object)
以 Promise 风格 调用:支持; 小程序插件:支持,需要小程序基础库版本不低于 1.9.6;
获取网络类型 developers.weixin.qq.com/miniprogram…

wx.onNetworkStatusChange(function callback)
基础库 1.1.0 开始支持,低版本需做兼容处理。
以 Promise 风格 调用:不支持; 小程序插件:不支持;
监听网络状态变化事件
developers.weixin.qq.com/miniprogram…

wx.offNetworkStatusChange(function callback)
基础库 2.9.3 开始支持,低版本需做兼容处理。
以 Promise 风格 调用:不支持; 小程序插件:支持,需要小程序基础库版本不低于 2.9.1;
取消监听网络状态变化事件,参数为空,则取消所有的事件监听。
developers.weixin.qq.com/miniprogram…

● 系统
wx.getSystemInfo(Object object)
以 Promise 风格 调用:支持; 小程序插件:支持,需要小程序基础库版本不低于 1.9.6;
获取系统信息
developers.weixin.qq.com/miniprogram…

wx.getSystemInfoSync()
以 Promise 风格 调用:支持; 小程序插件:支持,需要小程序基础库版本不低于 1.9.6;
wx.getSystemInfo 的同步版本
developers.weixin.qq.com/miniprogram…

● 性能
wx.onMemoryWarning(function callback)
基础库 2.0.2 开始支持,低版本需做兼容处理。
以 Promise 风格 调用:不支持; 小程序插件:不支持;
监听内存不足告警事件。
当 iOS/Android 向小程序进程发出内存警告时,触发该事件。触发该事件不意味小程序被杀,大部分情况下仅仅是告警,开发者可在收到通知后回收一些不必要资源避免进一步加剧内存紧张。
developers.weixin.qq.com/miniprogram…

● 交互
wx.showModal(Object object)
以 Promise 风格 调用:支持; 小程序插件:支持,需要小程序基础库版本不低于 1.9.6;
显示模态对话框
developers.weixin.qq.com/miniprogram…

wx.showToast(Object object)
以 Promise 风格 调用:支持; 小程序插件:支持,需要小程序基础库版本不低于 1.9.6;
显示消息提示框
developers.weixin.qq.com/miniprogram…

wx.hideToast(Object object)
以 Promise 风格 调用:支持; 小程序插件:支持,需要小程序基础库版本不低于 1.9.6;
隐藏消息提示框
developers.weixin.qq.com/miniprogram…

wx.showLoading(Object object)
基础库 1.1.0 开始支持,低版本需做兼容处理。
以 Promise 风格 调用:支持; 小程序插件:支持,需要小程序基础库版本不低于 1.9.6;
显示 loading 提示框。需主动调用 wx.hideLoading 才能关闭提示框
developers.weixin.qq.com/miniprogram…

wx.hideLoading(Object object) 基础库 1.1.0 开始支持,低版本需做兼容处理。 以 Promise 风格 调用:支持; 小程序插件:支持,需要小程序基础库版本不低于 1.9.6; 隐藏 loading 提示框 developers.weixin.qq.com/miniprogram…

● 更新
wx.getUpdateManager()
基础库 1.9.90 开始支持,低版本需做兼容处理。
以 Promise 风格 调用:不支持; 小程序插件:不支持;
获取全局唯一的版本更新管理器,用于管理小程序更新。关于小程序的更新机制,可以查看运行机制文档。
developers.weixin.qq.com/miniprogram…

● 动画
wx.createAnimation(Object object)
以 Promise 风格 调用:不支持; 小程序插件:支持,需要小程序基础库版本不低于 1.9.6;
创建一个动画实例 animation。调用实例的方法来描述动画。最后通过动画实例的 export 方法导出动画数据传递给组件的 animation 属性。 developers.weixin.qq.com/miniprogram…

● 路由
wx.navigateBack(Object object)
以 Promise 风格 调用:支持; 需要页面权限:小程序不能在插件页面中调用该接口,插件也不能在小程序页面中调用该接口; 小程序插件:支持,需要小程序基础库版本不低于 2.1.0;
在小程序插件中使用时,只能在当前插件的页面中调用
关闭当前页面,返回上一页面或多级页面。可通过 getCurrentPages 获取当前的页面栈,决定需要返回几层。
developers.weixin.qq.com/miniprogram…

wx.navigateTo(Object object)
以 Promise 风格 调用:支持; 需要页面权限:小程序不能在插件页面中调用该接口,插件也不能在小程序页面中调用该接口; 小程序插件:支持,需要小程序基础库版本不低于 2.2.2;
在小程序插件中使用时,只能在当前插件的页面中调用
保留当前页面,跳转到应用内的某个页面。但是不能跳到 tabbar 页面。使用 wx.navigateBack 可以返回到原页面。小程序中页面栈最多十层。
developers.weixin.qq.com/miniprogram…

wx.redirectTo(Object object)
以 Promise 风格 调用:支持; 需要页面权限:小程序不能在插件页面中调用该接口,插件也不能在小程序页面中调用该接口; 小程序插件:支持,需要小程序基础库版本不低于 2.2.2;
在小程序插件中使用时,只能在当前插件的页面中调用
关闭当前页面,跳转到应用内的某个页面。但是不允许跳转到 tabbar 页面。
developers.weixin.qq.com/miniprogram…

wx.switchTab(Object object)
以 Promise 风格 调用:支持; 需要页面权限:小程序不能在插件页面中调用该接口,插件也不能在小程序页面中调用该接口; 小程序插件:支持,需要小程序基础库版本不低于 2.3.1;
在小程序插件中使用时,只能在当前插件的页面中调用
跳转到 tabBar 页面,并关闭其他所有非 tabBar 页面
developers.weixin.qq.com/miniprogram…

● 网络
wx.request(Object object) 以 Promise 风格 调用:不支持; 小程序插件:支持,需要小程序基础库版本不低于 1.9.6; 发起 HTTPS 网络请求。使用前请注意阅读相关说明。 developers.weixin.qq.com/miniprogram…

● 位置
wx.getLocation(Object object)
以 Promise 风格 调用:支持; 用户授权:需要 scope.userLocation; 小程序插件:支持,需要小程序基础库版本不低于 1.9.6;
获取当前的地理位置、速度。当用户离开小程序后,此接口无法调用。开启高精度定位,接口耗时会增加,可指定 highAccuracyExpireTime 作为超时时间。地图相关使用的坐标格式应为 gcj02。高频率调用会导致耗电,如有需要可使用持续定位接口 wx.onLocationChange。
developers.weixin.qq.com/miniprogram…

● 设置
wx.openSetting(Object object)
基础库 1.1.0 开始支持,低版本需做兼容处理。
以 Promise 风格 调用:支持; 小程序插件:支持,需要小程序基础库版本不低于 2.10.3;
调起客户端小程序设置界面,返回用户设置的操作结果。设置界面只会出现小程序已经向用户请求过的权限。
developers.weixin.qq.com/miniprogram…

wx.getSetting(Object object)
基础库 1.2.0 开始支持,低版本需做兼容处理。
以 Promise 风格 调用:支持; 小程序插件:支持,需要小程序基础库版本不低于 2.6.3;
在小程序插件中使用时,接口有以下不同:

  1. withSubscriptions 无效(插件暂无订阅消息)
  2. 返回值中的 authSetting 字段中是插件的权限(如用户信息功能页授权)
  3. 2.14.0 起返回值中有 miniprogramAuthSetting 字段,内容等于当前小程序 getSetting 的结果(不含订阅状态)
    获取用户的当前设置。返回值中只会出现小程序已经向用户请求过的权限。
    developers.weixin.qq.com/miniprogram…

● WXML
wx.createSelectorQuery()
基础库 1.4.0 开始支持,低版本需做兼容处理。
以 Promise 风格 调用:不支持; 小程序插件:支持,需要小程序基础库版本不低于 1.9.6;
返回一个 SelectorQuery 对象实例。在自定义组件或包含自定义组件的页面中,应使用 this.createSelectorQuery() 来代替。
developers.weixin.qq.com/miniprogram…

● 滚动
wx.pageScrollTo(Object object)
基础库 1.4.0 开始支持,低版本需做兼容处理。
以 Promise 风格 调用:支持; 需要页面权限:小程序不能在插件页面中调用该接口,插件也不能在小程序页面中调用该接口; 小程序插件:支持,需要小程序基础库版本不低于 2.1.0;
在小程序插件中使用时,只能在当前插件的页面中调用
将页面滚动到目标位置,支持选择器和滚动距离两种方式定位
developers.weixin.qq.com/miniprogram…

● 导航栏
wx.setNavigationBarColor(Object object)
基础库 1.4.0 开始支持,低版本需做兼容处理。
以 Promise 风格 调用:支持; 需要页面权限:小程序不能在插件页面中调用该接口,插件也不能在小程序页面中调用该接口; 小程序插件:支持,需要小程序基础库版本不低于 2.1.0;
在小程序插件中使用时,只能在当前插件的页面中调用
设置页面导航条颜色
developers.weixin.qq.com/miniprogram…

● 小程序跳转
wx.navigateToMiniProgram(Object object)
基础库 1.3.0 开始支持,低版本需做兼容处理。
以 Promise 风格 调用:支持; 需要页面权限:小程序不能在插件页面中调用该接口,插件也不能在小程序页面中调用该接口; 小程序插件:不支持;
打开另一个小程序
developers.weixin.qq.com/miniprogram…

● 文件
wx.getFileSystemManager()
基础库 1.9.9 开始支持,低版本需做兼容处理。
以 Promise 风格 调用:不支持; 小程序插件:不支持;
获取全局唯一的文件管理器
developers.weixin.qq.com/miniprogram…

● 账号信息
Object wx.getAccountInfoSync()
基础库 2.2.2 开始支持,低版本需做兼容处理。
以 Promise 风格 调用:不支持; 小程序插件:支持,需要小程序基础库版本不低于 2.2.2;
获取当前帐号信息。线上小程序版本号仅支持在正式版小程序中获取,开发版和体验版中无法获取。

● 登陆
wx.login(Object object)
以 Promise 风格 调用:不支持; 小程序插件:支持,需要小程序基础库版本不低于 2.3.1;
在小程序插件中使用时,需要在用户信息功能页中获得用户授权之后调用。否则将返回 fail。详见 用户信息功能页 调用接口获取登录凭证(code)。通过凭证进而换取用户登录态信息,包括用户在当前小程序的唯一标识(openid)、微信开放平台帐号下的唯一标识(unionid,若当前小程序已绑定到微信开放平台帐号)及本次登录的会话密钥(session_key)等。用户数据的加解密通讯需要依赖会话密钥完成。更多使用方法详见 小程序登录。
developers.weixin.qq.com/miniprogram…

● 数据缓存
wx.setStorage(Object object)
以 Promise 风格 调用:支持; 小程序插件:支持,需要小程序基础库版本不低于 1.9.6;
将数据存储在本地缓存中指定的 key 中。会覆盖掉原来该 key 对应的内容。除非用户主动删除或因存储空间原因被系统清理,否则数据都一直可用。单个 key 允许存储的最大数据长度为 1MB,所有数据存储上限为 10MB。
developers.weixin.qq.com/miniprogram…

wx.getStorageSync(string key)
以 Promise 风格 调用:支持;小程序插件:支持,需要小程序基础库版本不低于 1.9.6;
wx.getStorage 的同步版本
developers.weixin.qq.com/miniprogram…

wx.removeStorageSync(string key)
以 Promise 风格 调用:支持; 小程序插件:支持,需要小程序基础库版本不低于 1.9.6;
wx.removeStorage 的同步版本
developers.weixin.qq.com/miniprogram…

wx.clearStorage(Object object)
以 Promise 风格 调用:支持; 小程序插件:不支持;
清理本地数据缓存。缓存相关策略请查看 存储。
developers.weixin.qq.com/miniprogram…

● 用户信息
wx.getUserInfo(Object object)
以 Promise 风格 调用:不支持; 用户授权:需要 scope.userInfo。; 小程序插件:支持,需要小程序基础库版本不低于 2.3.1;
在小程序插件中使用时,需要在用户信息功能页中获得用户授权之后调用。否则将返回 fail。详见 用户信息功能页 获取用户信息。
developers.weixin.qq.com/miniprogram…

● 剪贴板
wx.setClipboardData(Object object)
基础库 1.1.0 开始支持,低版本需做兼容处理。
以 Promise 风格 调用:支持; 小程序插件:支持,需要小程序基础库版本不低于 1.9.6;
设置系统剪贴板的内容。调用成功后,会弹出 toast 提示"内容已复制",持续 1.5s
developers.weixin.qq.com/miniprogram…

● 授权
wx.authorize(Object object)
基础库 1.2.0 开始支持,低版本需做兼容处理。
以 Promise 风格 调用:支持; 小程序插件:不支持;
提前向用户发起授权请求。调用后会立刻弹窗询问用户是否同意授权小程序使用某项功能或获取用户的某些数据,但不会实际调用对应接口。如果用户之前已经同意授权,则不会出现弹窗,直接返回成功。更多用法详见 用户授权。 > 小程序插件可以使用 wx.authorizeForMiniProgram
developers.weixin.qq.com/miniprogram…

● 图片
wx.getImageInfo(Object object)
以 Promise 风格 调用:支持; 小程序插件:支持,需要小程序基础库版本不低于 1.9.6;
获取图片信息。网络图片需先配置download域名才能生效。
developers.weixin.qq.com/miniprogram…

● 菜单
wx.getMenuButtonBoundingClientRect()
基础库 2.1.0 开始支持,低版本需做兼容处理。
以 Promise 风格 调用:不支持; 小程序插件:支持,需要小程序基础库版本不低于 2.15.0;
获取菜单按钮(右上角胶囊按钮)的布局位置信息。坐标信息以屏幕左上角为原点。
developers.weixin.qq.com/miniprogram…

● 振动
wx.vibrateShort(Object object)
基础库 1.2.0 开始支持,低版本需做兼容处理。
以 Promise 风格 调用:支持; 小程序插件:支持,需要小程序基础库版本不低于 1.9.6;
使手机发生较短时间的振动(15 ms)。仅在 iPhone 7 / 7 Plus 以上及 Android 机型生效
developers.weixin.qq.com/miniprogram…

● 录音
wx.getRecorderManager()
基础库 1.6.0 开始支持,低版本需做兼容处理。
以 Promise 风格 调用:不支持; 小程序插件:支持,需要小程序基础库版本不低于 1.9.94;
获取全局唯一的录音管理器 RecorderManager
developers.weixin.qq.com/miniprogram…

● 上传
wx.uploadFile(Object object)
以 Promise 风格 调用:不支持; 小程序插件:支持,需要小程序基础库版本不低于 1.9.6;
将本地资源上传到服务器。客户端发起一个 HTTPS POST 请求,其中 content-type 为 multipart/form-data。使用前请注意阅读相关说明。
developers.weixin.qq.com/miniprogram…

● 画布
wx.createCanvasContext(string canvasId, Object this)
从基础库 2.9.0 开始,本接口停止维护,请使用 Canvas 代替
以 Promise 风格 调用:不支持; 小程序插件:支持,需要小程序基础库版本不低于 1.9.6;
创建 canvas 的绘图上下文 CanvasContext 对象
developers.weixin.qq.com/miniprogram…

● 视频
wx.createVideoContext(string id, Object this)
以 Promise 风格 调用:不支持; 小程序插件:支持,需要小程序基础库版本不低于 1.9.6;
创建 video 上下文 VideoContext 对象。建议使用 wx.createSelectorQuery 获取 context 对象。
developers.weixin.qq.com/miniprogram…

● 下载
wx.downloadFile(Object object)
以 Promise 风格 调用:不支持; 小程序插件:支持,需要小程序基础库版本不低于 1.9.6;
下载文件资源到本地。客户端直接发起一个 HTTPS GET 请求,返回文件的本地临时路径 (本地路径),单次下载允许的最大文件为 200MB。使用前请注意阅读相关说明。
注意:请在服务端响应的 header 中指定合理的 Content-Type 字段,以保证客户端正确处理文件类型。
developers.weixin.qq.com/miniprogram…

● 上传
wx.uploadFile(Object object)
以 Promise 风格 调用:不支持; 小程序插件:支持,需要小程序基础库版本不低于 1.9.6;
将本地资源上传到服务器。客户端发起一个 HTTPS POST 请求,其中 content-type 为 multipart/form-data。使用前请注意阅读相关说明。
developers.weixin.qq.com/miniprogram…

● 小程序
wx.offAudioInterruptionBegin(function callback)
基础库 2.6.2 开始支持,低版本需做兼容处理。
以 Promise 风格 调用:不支持; 小程序插件:不支持;
取消监听音频因为受到系统占用而被中断开始事件
developers.weixin.qq.com/miniprogram…

● 基础
wx.arrayBufferToBase64(ArrayBuffer arrayBuffer)
基础库 1.1.0 开始支持,低版本需做兼容处理。
从基础库 2.4.0 开始,本接口停止维护
以 Promise 风格 调用:不支持; 小程序插件:支持;
将 ArrayBuffer 对象转成 Base64 字符串
developers.weixin.qq.com/miniprogram…

● 调试
wx.getRealtimeLogManager()
基础库 2.7.1 开始支持,低版本需做兼容处理。
以 Promise 风格 调用:不支持; 小程序插件:不支持;
获取实时日志管理器对象。
developers.weixin.qq.com/miniprogram…

● more...