微信小程序 微信小程序框架API

Posted java1234_小锋

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了微信小程序 微信小程序框架API相关的知识,希望对你有一定的参考价值。

完整微信小程序(Java后端) 技术贴目录清单页面(必看)

微信小程序框架所提供的API接口也是相当完备的,如果说小程序组件是用来构建小程序的视图层,那么小程序API则在小程序逻辑层担当重任。随着小程序版本的更新迭代,目前小程序框架 API分类已经达到了19个大类,如下图所示。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-klfpNfJn-1625118356074)(C:\\Users\\java1234\\AppData\\Roaming\\Typora\\typora-user-images\\image-20210630090839902.png)]

当然这么多API并不需要读者一个个去详细研究,而是建议大家重点掌握其中常用的API如何查阅和使用,然后即可触类旁通使用其他的API。其实查阅API有点类似于查词典,我们只需要知道如何去查阅的方法即可,而没必要将整部词典学会,故而掌握查阅API定义以及如何使用才是至关重要的。
接下来,就开始重点讲解小程序框架中一些常用的API,通过这些API的学习和理解,希望读者能够对小程序API如何查阅和使用形成一定的思维认知。

6.1 基础

微信小程序基础API包含一些环境变量,转码,系统信息,更新,小程序生命周期,应用及事件,调试,性能,加密等功能;

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-oh99diA6-1625118356075)(C:\\Users\\java1234\\AppData\\Roaming\\Typora\\typora-user-images\\image-20210630094305905.png)]

wx.getSystemInfo 获取系统信息实例

wx.getSystemInfo(Object object)

Promise 风格 调用:支持

小程序插件:支持,需要小程序基础库版本不低于 1.9.6

微信 Windows 版:支持

微信 Mac 版:支持

获取系统信息。由于历史原因,wx.getSystemInfo 是异步的调用格式,但是是同步返回,需要异步获取系统信息请使用 wx.getSystemInfoAsync

参数

Object object

属性类型默认值必填说明
successfunction接口调用成功的回调函数
failfunction接口调用失败的回调函数
completefunction接口调用结束的回调函数(调用成功、失败都会执行)

object.success 回调函数

参数

Object res

属性类型说明最低版本
brandstring设备品牌1.5.0
modelstring设备型号。新机型刚推出一段时间会显示unknown,微信会尽快进行适配。
pixelRationumber设备像素比
screenWidthnumber屏幕宽度,单位px1.1.0
screenHeightnumber屏幕高度,单位px1.1.0
windowWidthnumber可使用窗口宽度,单位px
windowHeightnumber可使用窗口高度,单位px
statusBarHeightnumber状态栏的高度,单位px1.9.0
languagestring微信设置的语言
versionstring微信版本号
systemstring操作系统及版本
platformstring客户端平台
fontSizeSettingnumber用户字体大小(单位px)。以微信客户端「我-设置-通用-字体大小」中的设置为准1.5.0
SDKVersionstring客户端基础库版本1.1.0
benchmarkLevelnumber设备性能等级(仅 android)。取值为:-2 或 0(该设备无法运行小游戏),-1(性能未知),>=1(设备性能值,该值越高,设备性能越好,目前最高不到50)1.8.0
albumAuthorizedboolean允许微信使用相册的开关(仅 ios 有效)2.6.0
cameraAuthorizedboolean允许微信使用摄像头的开关2.6.0
locationAuthorizedboolean允许微信使用定位的开关2.6.0
microphoneAuthorizedboolean允许微信使用麦克风的开关2.6.0
notificationAuthorizedboolean允许微信通知的开关2.6.0
notificationAlertAuthorizedboolean允许微信通知带有提醒的开关(仅 iOS 有效)2.6.0
notificationBadgeAuthorizedboolean允许微信通知带有标记的开关(仅 iOS 有效)2.6.0
notificationSoundAuthorizedboolean允许微信通知带有声音的开关(仅 iOS 有效)2.6.0
bluetoothEnabledboolean蓝牙的系统开关2.6.0
locationEnabledboolean地理位置的系统开关2.6.0
wifiEnabledbooleanWi-Fi 的系统开关2.6.0
safeAreaObject在竖屏正方向下的安全区域2.7.0
locationReducedAccuracybooleantrue 表示模糊定位,false 表示精确定位,仅 iOS 支持
themestring系统当前主题,取值为lightdark,全局配置"darkmode":true时才能获取,否则为 undefined (不支持小游戏)2.11.0
hostObject当前小程序运行的宿主环境2.12.3
enableDebugboolean是否已打开调试。可通过右上角菜单或 wx.setEnableDebug 打开调试。2.15.0
deviceOrientationstring设备方向

safeArea 的结构

属性类型说明
leftnumber安全区域左上角横坐标
rightnumber安全区域右下角横坐标
topnumber安全区域左上角纵坐标
bottomnumber安全区域右下角纵坐标
widthnumber安全区域的宽度,单位逻辑像素
heightnumber安全区域的高度,单位逻辑像素

theme 的合法值

说明最低版本
dark深色主题
light浅色主题

host 的结构

属性类型说明
appIdstring宿主 app 对应的 appId

deviceOrientation 的合法值

说明最低版本
portrait竖屏
landscape横屏

示例代码

在开发者工具中预览效果

wx.getSystemInfo({
  success (res) {
    console.log(res.model)
    console.log(res.pixelRatio)
    console.log(res.windowWidth)
    console.log(res.windowHeight)
    console.log(res.language)
    console.log(res.version)
    console.log(res.platform)
  }
})
try {
  const res = wx.getSystemInfoSync()
  console.log(res.model)
  console.log(res.pixelRatio)
  console.log(res.windowWidth)
  console.log(res.windowHeight)
  console.log(res.language)
  console.log(res.version)
  console.log(res.platform)
} catch (e) {
  // Do something when catch error
}

运行效果:

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-ZSC5KOoh-1625118356076)(C:\\Users\\java1234\\AppData\\Roaming\\Typora\\typora-user-images\\image-20210630095221782.png)]

6.2 路由

路由API主要提供一些页面跳转,关闭页面以及页面之间的通信接口;

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-N9XIQz8x-1625118356077)(C:\\Users\\java1234\\AppData\\Roaming\\Typora\\typora-user-images\\image-20210630161012749.png)]

6.3 跳转

跳转API主要提供打开另外一个小程序,退出小程序和关闭小程序操作接口;

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-U2RLPZZq-1625118356078)(C:\\Users\\java1234\\AppData\\Roaming\\Typora\\typora-user-images\\image-20210630161658339.png)]

6.4 转发

转发API,主要提供转发属性设置,打开分享弹窗,转发视频或者文件,以及显示和隐藏转发按钮,验证私密消息等接口;

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-l264loqM-1625118356078)(C:\\Users\\java1234\\AppData\\Roaming\\Typora\\typora-user-images\\image-20210630164211362.png)]

6.5 界面

界面API主要提供交互,导航栏,背景,Tab Bar,字体,下拉刷新,滚动,动画,置顶,自定义组件,菜单,窗口等接口!

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-2EjcoR9u-1625118356079)(C:\\Users\\java1234\\AppData\\Roaming\\Typora\\typora-user-images\\image-20210701083339058.png)]

6.6 网络

网络API主要提供发起请求,下载,上传,WebSocket,mDNS,TCP通信,UDP通信接口;

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-zU4Zmqet-1625118356079)(C:\\Users\\java1234\\AppData\\Roaming\\Typora\\typora-user-images\\image-20210701083719492.png)]

6.7 支付

支付API主要提供发起微信支付和创建自定义版交易组件订单等接口;

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-OxSY0Bl6-1625118356080)(C:\\Users\\java1234\\AppData\\Roaming\\Typora\\typora-user-images\\image-20210701084401904.png)]

6.8 数据缓存

数据缓存API主要提供本地缓存的添加,获取,销毁以及内存中数据的操作和周期性更新接口;

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-FQyrOlds-1625118356080)(C:\\Users\\java1234\\AppData\\Roaming\\Typora\\typora-user-images\\image-20210701091601860.png)]

6.9 数据分析

数据分析接口主要提供自定义分析数据上报,事件上报,监控等接口;

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-IJw6QoqO-1625118356080)(C:\\Users\\java1234\\AppData\\Roaming\\Typora\\typora-user-images\\image-20210701092042043.png)]

6.10 画布

画布API主要提供画布相关接口。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-X3Z4OprP-1625118356081)(C:\\Users\\java1234\\AppData\\Roaming\\Typora\\typora-user-images\\image-20210701093336783.png)]

6.11 媒体

媒体API主要提供地图,图片,视频,音频,背景音频,实时音视频,录音,相机,富文本,音视频合成,实时语音,画面录制器,视频解码器等接口;

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-73nt5v6O-1625118356081)(C:\\Users\\java1234\\AppData\\Roaming\\Typora\\typora-user-images\\image-20210701092734217.png)]

6.12 位置

位置API主要提供位置相关接口

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-2A65ZAya-1625118356082)(C:\\Users\\java1234\\AppData\\Roaming\\Typora\\typora-user-images\\image-20210701093226095.png)]

6.13 文件

文件API主要提供文件操作相关接口。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-rgJ3hMjX-1625118356082)(C:\\Users\\java1234\\AppData\\Roaming\\Typora\\typora-user-images\\image-20210701093507977.png)]

6.14 开放接口

开放接口API主要提供登录,账号信息,用户信息,授权,设置,收货地址,卡券,发票,生物认证,微信运动,订阅信息,微信红包,收藏,微信群等接口。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-goOjONK3-1625118356082)(C:\\Users\\java1234\\AppData\\Roaming\\Typora\\typora-user-images\\image-20210701093914829.png)]

6.15 设备

设备API主要提供外围设备,iBeacon,NFC,Wi-Fi,日历,联系人,无障碍,低功耗蓝牙,电量,剪贴板,网络,加密,屏幕,键盘,电话,加速计,罗盘,设备方向,陀螺仪,内存,扫码,震动等接口。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-2swSPFEM-1625118356083)(C:\\Users\\java1234\\AppData\\Roaming\\Typora\\typora-user-images\\image-20210701094048285.png)]

6.16 Worker

Worker API主要提供Worker线程操作接口;

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-8qPCE3p2-1625118356083)(C:\\Users\\java1234\\AppData\\Roaming\\Typora\\typora-user-images\\image-20210701094537199.png)]

6.17 WXML

WXML API提供主要提供WXML节点相关操作接口;

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-zRLekByb-1625118356084)(C:\\Users\\java1234\\AppData\\Roaming\\Typora\\typora-user-images\\image-20210701094639584.png)]

6.18 第三方平台

第三方平台API主要提供第三方平台相关调用接口。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-17phBXTe-1625118356084)(C:\\Users\\java1234\\AppData\\Roaming\\Typora\\typora-user-images\\image-20210701095614353.png)]

6.19 广告

广告API主要提供广告操作相关API接口。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-PCcFByNn-1625118356084)(C:\\Users\\java1234\\AppData\\Roaming\\Typora\\typora-user-images\\image-20210701095900944.png)]

微信搜一搜【java1234】关注这个放荡不羁的程序员,关注后回复【资料】有我准备的一线大厂笔试面试资料以及简历模板。

以上是关于微信小程序 微信小程序框架API的主要内容,如果未能解决你的问题,请参考以下文章

vscode 开发微信小程序环境配置

微信小程序代码片段分享

微信小程序之原生API(下)

微信小程序视图层WXML_模板

微信小程序开发之代码提示插件(VSCode)

浅析Minium,微信小程序自动化测试框架