wx.getCommonConfig(Object object)

基础库 2.33.0 开始支持,低版本需做兼容处理。

以 Promise 风格 调用:不支持

微信小程序插件:不支持

微信 Windows 版:支持

微信 Mac 版:支持

微信 鸿蒙 OS 版:支持

功能描述

传入实验参数数组,就能获取到对应的实验参数值。

参数

Object object

属性 类型 默认值 必填 说明
keys Array.<string> 否 需要获取的数据指标的对象数组,每个 string 的格式约定为:配置类型_分表key
mode number 是 0:通用配置模式 1:实验模式,参数与返回结果的使用等同于接口 wx.getExptInfoSync
success function 否 接口调用成功的回调函数
fail function 否 接口调用失败的回调函数
complete function 否 接口调用结束的回调函数(调用成功、失败都会执行)

object.success 回调函数

参数
Object res
属性 类型 说明
errcode number 错误码
errmsg string 错误信息
conf_type number 配置类型,1-表类型 2-kv类型
conf string 根据 conf_type 来确定 conf 的内容。conf_type 为 1 时,conf 是一个 json 数组,类似 “[{xxx},{xxx}]”,每一项对应表类型中每一行的配置内容;conf_type 为 2 时,conf 是一个 json 对象,类似 “{xxxx}”
expire_sec number 过期时间,单位秒。0 表示当次有效

示例代码

  wx.getCommonConfig({
      keys:["key1", "key2"],
      mode: 0,
      success: (res)=>{
        console.log("success")
        console.log(res)
      },
    fail: (res)=>{
      console.log("fail")
      console.log(res)
    }})

wx.getExptInfoSync

基础库 2.17.0 开始支持,低版本需做兼容处理。

微信小程序插件:不支持

功能描述

传入实验参数数组,就能获取对应的实验参数值

参数

Array. keys

实验参数数组,不传的话就获取所有实验参数

返回值

Object

返回结果对象,key 是传入的 keys 里的每一项,value 是对应的参数值

提示

假设实验参数有 color, size 调用 wx.getExptInfoSync() 会返回类似 {color:'#fff',size:20} 的结果 而 wx.getExptInfoSync([‘color’]) 则只会返回 {color:'#fff'}

wx.reportAnalytics(string eventName, Object data)

从基础库 2.31.1 开始,本接口停止维护,请使用 wx.reportEvent 代替

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

在微信小程序插件中使用时,可以被正常调用,但目前不会进行统计展示

微信 Windows 版:支持

微信 Mac 版:支持

微信 鸿蒙 OS 版:支持

功能描述

自定义分析数据上报接口。使用前,需要在微信小程序管理后台自定义分析中新建事件,配置好事件名与字段。

参数

string eventName

事件名

Object data

上报的自定义数据,key 为配置中的字段名,value 为上报的数据。

示例代码

wx.reportAnalytics('purchase', {
  price: 120,
  color: 'red'
})

wx.reportMonitor(string name, number value)

从基础库 2.31.1 开始,本接口停止维护,请使用 wx.reportEvent 代替

基础库 2.0.1 开始支持,低版本需做兼容处理。

微信小程序插件:不支持

微信 Windows 版:支持

微信 Mac 版:支持

微信 鸿蒙 OS 版:支持

功能描述

自定义业务数据监控上报接口。

参数

string name

监控ID,在「微信小程序管理后台」新建数据指标后获得

number value

上报数值,经处理后会在「微信小程序管理后台」上展示每分钟的上报总量

使用说明

使用前,需要在「微信小程序管理后台-运维中心-性能监控-业务数据监控」中新建监控事件,配置监控描述与告警类型。每一个监控事件对应唯一的监控ID,开发者最多可以创建128个监控事件。

示例代码

wx.reportMonitor('1', 1)

CacheManager.on(string eventName, function handler)

基础库 2.24.0 开始支持,低版本需做兼容处理。

微信小程序插件:不支持

相关文档: 弱网体验优化

功能描述

监听事件。

参数

string eventName

事件名

eventName 的合法值

值 说明 最低版本
request 发生 wx.request 请求,只在缓存管理器开启阶段会触发
enterWeakNetwork 进入弱网/离线状态
exitWeakNetwork 离开弱网/离线状态

function handler

事件句柄

这里 request 事件会提供 request 事件对象,用于做后续的处理;在 request 事件中需要返回一个 promise,用来生成 wx.request 请求的返回内容。 这次 request 所返回的请求结果默认不会写入缓存中。如需写入缓存,可以传入参数 request({ needUpdateCache: true })

示例代码

async function handler(evt) {
  // evt.url - 请求 url
  // evt.data - 请求参数
  // evt.method - 请求方法
  // evt.request - 原始 request 方法,返回一个 promise

  // if (evt.url === '/xxx') {
  //   // 如果有些请求仍然希望走到网络,则可以如下处理
  //   const res = await evt.request()
  //   // res 即为网络请求返回
  // }

  return new Promsie((resolve, reject) => {
    // do sth
    if (data) {
      // 这里 resolve 的 data 就会作为 wx.request 的 success 回调结果返回
      resolve(data)
    } else {
      // 这里 reject 的错误信息就会作为 wx.request 的 fail 回调结果返回
      reject('no data')
    }
  })
}
cacheManager.on('request', handler)

CacheManager.match(Object evt)

基础库 2.24.0 开始支持,低版本需做兼容处理。

微信小程序插件:不支持

相关文档: 弱网体验优化

功能描述

匹配命中的缓存规则,一般需要和 request 事件搭配使用。

参数

Object evt

request 事件对象

返回值

Object

匹配到的缓存

属性 类型 说明
ruleId string 命中的规则 id
cacheId string 缓存 id
data any 缓存内容,会带有 fromCache 标记,方便开发者区分内容是否来自缓存
createTime number 缓存创建时间
maxAge number 缓存有效时间

示例代码

function handler(evt) {
  const cache = cacheManager.match(evt)
  // 若有重复监听,则取第一个 handler 返回的 promise
  return new Promise((resolve, reject) => {
    if (cache.data) {
      resolve(cache.data)
    } else {
      reject('no cache')
    }
  })
}
cacheManager.on('request', handler)