diff --git a/.vscode/extensions.json b/.vscode/extensions.json
new file mode 100644
index 0000000..c968b6d
--- /dev/null
+++ b/.vscode/extensions.json
@@ -0,0 +1,5 @@
+{
+ "recommendations": [
+ "zhengjiaqi.px-to-rpx"
+ ]
+}
\ No newline at end of file
diff --git a/.vscode/settings.json b/.vscode/settings.json
new file mode 100644
index 0000000..6eb8fd2
--- /dev/null
+++ b/.vscode/settings.json
@@ -0,0 +1,10 @@
+{
+ "files.associations": {
+ "*.wxss": "css",
+ "*.tpl": "html",
+ "*.vue": "vue",
+ "*.wxml": "html"
+ },
+ "px-to-rpx.baseWidth": 500,
+ "px-to-rpx.autoRemovePrefixZero": true
+}
\ No newline at end of file
diff --git a/pages/show/show.js b/pages/show/show.js
index 7517711..15c18ba 100644
--- a/pages/show/show.js
+++ b/pages/show/show.js
@@ -1212,7 +1212,7 @@ Page({
// if (element.alias.length > 2) element.alias = element.alias.slice(0, 3) + '...'
element['distanceText'] = this.metersToKilometers(element.distance)
- element.list.forEach(ele => {
+ element.list.forEach((ele, ii) => {
ele['durationText'] = this.secondsToHoursMinutes(ele.duration, 'chinese')
ele['durationText2'] = this.secondsToHoursMinutes(ele.duration)
ele['distanceText'] = this.metersToKilometers(ele.distance)
@@ -1229,24 +1229,27 @@ Page({
})
}
} else ele.publictransport = null
+
+
+ if (ii == 0) {
+ const obj = element.list[0] || {}
+ let toolText = "步行"
+ if (Object.prototype.toString.call(obj.publictransport) === '[object Object]') toolText = "公交地铁"
+ element['distanceText'] = obj['distanceText']
+ element['durationText'] = obj.publictransport?.durationText2 || obj['durationText2']
+ element['toolText'] = toolText
+ }
})
if (school == element.id) {
academyPitchIndex = index
- const obj = element.list[0] || {}
- let toolText = "步行"
- if (Object.prototype.toString.call(obj.publictransport) === '[object Object]') toolText = "公交地铁"
- specialSchoolDistance = {
- alias: element.alias,
- distanceText: obj['distanceText'],
- durationText: obj.publictransport?.durationText2 || obj['durationText2'],
- toolText,
- }
+ specialSchoolDistance = element
} else annexSchoolOmit.push(element)
+ console.log("element", element);
})
if (specialSchoolDistance) annexSchoolOmit = annexSchoolOmit.slice(0, 5)
- else annexSchoolOmit = annexSchoolOmit.slice(0, 7)
+ else annexSchoolOmit = annexSchoolOmit.slice(0, 4)
this.setData({
annexSchoolList: data,
diff --git a/pages/show/show.less b/pages/show/show.less
deleted file mode 100644
index 706d028..0000000
--- a/pages/show/show.less
+++ /dev/null
@@ -1,3 +0,0 @@
-.school-new {
-
-}
\ No newline at end of file
diff --git a/pages/show/show.wxml b/pages/show/show.wxml
index 94c59f4..8259b33 100644
--- a/pages/show/show.wxml
+++ b/pages/show/show.wxml
@@ -46,115 +46,113 @@
-
-
-
-
-
-
- 认证中介
-
-
-
-
- {{ info['intermediary'] != 1 ? '房产证明' : '真实牌照' }}
-
- {{ info['intermediary'] != 1 ? '房东身份证' : '身份证明' }}
-
-
- {{ info.subject }}
-
-
-
- 预算
- {{ info.currency || "HK$"}}
- {{ info.rent }}
- /{{ info.rentalperiod }}
-
+
+
+
+
+
+ 认证中介
-
-
-
+
+
+ {{ info['intermediary'] != 1 ? '房产证明' : '真实牌照' }}
+
+ {{ info['intermediary'] != 1 ? '房东身份证' : '身份证明' }}
+
+ {{ info.subject }}
+
+
+
+ 预算
+ {{ info.currency || "HK$"}}
+ {{ info.rent }}
+ /{{ info.rentalperiod }}
+
+
-
-
-
-
-
- {{ info.video.length }}
-
-
-
- {{ info.picturegroup.length }}
-
-
-
-
-
-
-
-
-
- {{ item.size }}
-
+
+
+
+
+
+
+
+
+
+
+ {{ info.video.length }}
+
+
+
+ {{ info.picturegroup.length }}
+
+
+
+
+
+
+
+
+
+ {{ item.size }}
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 基本{{ info['intermediary'] == 6 ? '要求' : '信息' }}
-
-
-
-
- {{ item.name }}
-
-
- {{ it }}
-
-
- {{ item.value }}
-
-
+
+
+
+
+
+
+
-
-
-
-
- 目标区域
-
-
-
- {{ item.head }}
-
-
- {{ item.end }}
+
+
+
+
+ 基本{{ info['intermediary'] == 6 ? '要求' : '信息' }}
+
+
+
+
+ {{ item.name }}
+
+
+ {{ it }}
+
+
+ {{ item.value }}
+
+
+
+
+
+
+
+
+
+ 目标区域
+
+
+
+ {{ item.head }}
+
+
+ {{ item.end }}
-
+
@@ -175,7 +173,7 @@
-
+
{{ specialSchoolDistance.alias }}
{{ specialSchoolDistance.distanceText }}
@@ -195,14 +193,22 @@
-
-
-
- 城大
- 2.2km
-
- 2.2km
+
+
+
+
+ {{ item.alias }}
+ {{ item.distanceText }}
+
+
+ {{ item.durationText }}
+
+
+
+ 更多
+
+
diff --git a/pages/show/show.wxss b/pages/show/show.wxss
index 812e479..91f8f07 100644
--- a/pages/show/show.wxss
+++ b/pages/show/show.wxss
@@ -1,5 +1,6 @@
/* pages/show/show.wxss */
@import '../common/common.wxss';
+@import './show1.wxss';
.is_rent_btn {
position: absolute;
@@ -1113,7 +1114,8 @@ map .clickmap {
}
.certification .school .school-distance {
- color: #62b1ff;
+ /* color: #62b1ff; */
+ color: #8162FF;
font-size: 21rpx;
}
@@ -2358,7 +2360,7 @@ map .clickmap {
max-height: 69vh;
}
-.academy-box .academy-right .scroll-view{
+.academy-box .academy-right .scroll-view {
/* padding-bottom: 100rpx; */
}
@@ -2463,7 +2465,8 @@ map .clickmap {
height: 100%;
display: block;
background-image: linear-gradient(to bottom, #aaaaaa 50%, transparent 50%);
- background-size: 1px 4px; /* 控制虚线的宽度和间距 */
+ background-size: 1px 4px;
+ /* 控制虚线的宽度和间距 */
}
.journey-item:first-of-type::after {
@@ -2541,4 +2544,55 @@ map .clickmap {
margin-bottom: 30rpx;
}
+.school-new {
+ margin-top: 30rpx;
+}
+.school-new .school-new-list .school-new-item {
+ width: 270rpx;
+ height: 54rpx;
+ background-color: #f6f6f6;
+ border: 1rpx solid #ebebeb;
+ border-radius: 15rpx;
+ box-shadow: 15rpx;
+ font-size: 24rpx;
+ color: #333333;
+ display: inline-flex;
+ margin-right: 15rpx;
+}
+
+.school-new .school-new-list .school-new-item:not(:nth-last-child(-n+2)) {
+ margin-bottom: 15rpx;
+}
+
+.school-new .school-new-list .school-new-item:not(:nth-child(even)) {
+ margin-right: 15rpx;
+}
+
+.school-new .school-new-list .school-new-item .school-new-text {
+ color: #8162FF;
+ font-size: 21rpx;
+ margin-left: 10rpx;
+}
+
+.school-new .school-new-list .school-new-item .school-new-icon {
+ width: 30rpx;
+ height: 30rpx;
+ margin-left: 12rpx;
+}
+
+.school-new .school-new-more {
+ width: 117rpx;
+ height: 123rpx;
+ background-color: #f6f6f6;
+ border: 1rpx solid #ebebeb;
+ border-radius: 15rpx;
+ font-size: 24rpx;
+ color: #333333;
+}
+
+.school-new .school-new-more .school-new-more-icon {
+ width: 24rpx;
+ height: 24rpx;
+ margin-left: 9rpx;
+}
\ No newline at end of file
diff --git a/pages/show/show1.less b/pages/show/show1.less
new file mode 100644
index 0000000..e69de29
diff --git a/pages/show/show1.wxss b/pages/show/show1.wxss
new file mode 100644
index 0000000..e69de29
diff --git a/typings/wx.d.ts b/typings/wx.d.ts
new file mode 100644
index 0000000..a2ffc2b
--- /dev/null
+++ b/typings/wx.d.ts
@@ -0,0 +1,2705 @@
+// generate time:2017-08-23 21:12:06
+// Type definitions for wx app
+// Definitions by: hellopao
+
+/************************************************
+* *
+* 微信小程序 API *
+* *
+************************************************/
+
+interface IAnimation {
+ /**
+ * 透明度,参数范围 0~1
+ */
+ opacity(value: number): IAnimation;
+ /**
+ * 颜色值
+ */
+ backgroundColor(color: string): IAnimation;
+ /**
+ * 长度值,如果传入 Number 则默认使用 px,可传入其他自定义单位的长度值
+ */
+ width(length: number): IAnimation;
+ /**
+ * 长度值,如果传入 Number 则默认使用 px,可传入其他自定义单位的长度值
+ */
+ height(length: number): IAnimation;
+ /**
+ * 长度值,如果传入 Number 则默认使用 px,可传入其他自定义单位的长度值
+ */
+ top(length: number): IAnimation;
+ /**
+ * 长度值,如果传入 Number 则默认使用 px,可传入其他自定义单位的长度值
+ */
+ left(length: number): IAnimation;
+ /**
+ * 长度值,如果传入 Number 则默认使用 px,可传入其他自定义单位的长度值
+ */
+ bottom(length: number): IAnimation;
+ /**
+ * 长度值,如果传入 Number 则默认使用 px,可传入其他自定义单位的长度值
+ */
+ right(length: number): IAnimation;
+ /**
+ * deg的范围-180~180,从原点顺时针旋转一个deg角度
+ */
+ rotate(deg: number): IAnimation;
+ /**
+ * deg的范围-180~180,在X轴旋转一个deg角度
+ */
+ rotateX(deg: number): IAnimation;
+ /**
+ * deg的范围-180~180,在Y轴旋转一个deg角度
+ */
+ rotateY(deg: number): IAnimation;
+ /**
+ * deg的范围-180~180,在Z轴旋转一个deg角度
+ */
+ rotateZ(deg: number): IAnimation;
+ /**
+ * 同transform-function rotate3d
+ */
+ rotate3d(x: number, y: number, z: number, deg: number): IAnimation;
+ /**
+ * 一个参数时,表示在X轴、Y轴同时缩放sx倍数;两个参数时表示在X轴缩放sx倍数,在Y轴缩放sy倍数
+ */
+ scale(sx: number, sy?: number): IAnimation;
+ /**
+ * 在X轴缩放sx倍数
+ */
+ scaleX(sx: number): IAnimation;
+ /**
+ * 在Y轴缩放sy倍数
+ */
+ scaleY(sy: number): IAnimation;
+ /**
+ * 在Z轴缩放sy倍数
+ */
+ scaleZ(sz: number): IAnimation;
+ /**
+ * 在X轴缩放sx倍数,在Y轴缩放sy倍数,在Z轴缩放sz倍数
+ */
+ scale3d(sx: number, sy: number, sz: number): IAnimation;
+ /**
+ * 一个参数时,表示在X轴偏移tx,单位px;两个参数时,表示在X轴偏移tx,在Y轴偏移ty,单位px。
+ */
+ translate(tx: number, ty?: number): IAnimation;
+ /**
+ * 在X轴偏移tx,单位px
+ */
+ translateX(tx: number): IAnimation;
+ /**
+ * 在Y轴偏移tx,单位px
+ */
+ translateY(tx: number): IAnimation;
+ /**
+ * 在Z轴偏移tx,单位px
+ */
+ translateZ(tx: number): IAnimation;
+ /**
+ * 在X轴偏移tx,在Y轴偏移ty,在Z轴偏移tz,单位px
+ */
+ translate3d(tx: number, ty: number, tz: number): IAnimation;
+ /**
+ * 参数范围-180~180;一个参数时,Y轴坐标不变,X轴坐标延顺时针倾斜ax度;两个参数时,分别在X轴倾斜ax度,在Y轴倾斜ay度
+ */
+ skew(ax: number, ay?: number): IAnimation;
+ /**
+ * 参数范围-180~180;Y轴坐标不变,X轴坐标延顺时针倾斜ax度
+ */
+ skewX(ax: number): IAnimation;
+ /**
+ * 参数范围-180~180;X轴坐标不变,Y轴坐标延顺时针倾斜ay度
+ */
+ skewY(ay: number): IAnimation;
+ /**
+ * 同transform-function matrix
+ */
+ matrix(a, b, c, d, tx, ty): IAnimation;
+ /**
+ * 同transform-function matrix3d
+ */
+ matrix3d(): IAnimation;
+}
+
+interface ICanvasContext {
+ /**
+ * 设置填充色, 如果没有设置 fillStyle,默认颜色为 black。
+ */
+ setFillStyle(color: string): void;
+ /**
+ * 设置边框颜色, 如果没有设置 fillStyle,默认颜色为 black。
+ */
+ setStrokeStyle(color: string): void;
+ /**
+ * 设置阴影
+ */
+ setShadow(offsetX: number, offsetY: number, blur: number, color: string): void;
+ /**
+ * 创建一个线性的渐变颜色。需要使用 addColorStop() 来指定渐变点,至少要两个。
+ */
+ createLinearGradient(x0: number, y0: number, x1: number, y1: number): void;
+ /**
+ * 创建一个圆形的渐变颜色。 起点在圆心,终点在圆环。 需要使用 addColorStop() 来指定渐变点,至少要两个。
+ */
+ createCircularGradient(x: number, y: number, r: number): void;
+ /**
+ * 创建一个颜色的渐变点。小于最小 stop 的部分会按最小 stop 的 color 来渲染,大于最大 stop 的部分会按最大 stop 的 color 来渲染。需要使用 addColorStop() 来指定渐变点,至少要两个。
+ */
+ addColorStop(stop: number, color: string): void;
+ /**
+ * 设置线条端点的样式
+ */
+ setLineCap(lineCap: 'butt' | 'round' | 'square'): void;
+ /**
+ * 设置两线相交处的样式
+ */
+ setLineJoin(lineJoin: 'bevel' | 'round' | 'miter'): void;
+ /**
+ * 设置线条宽度
+ */
+ setLineWidth(lineWidth: number): void;
+ /**
+ * 设置最大倾斜
+ */
+ setMiterLimit(miterLimit: number): void;
+ /**
+ * 添加一个矩形路径到当前路径。
+ */
+ rect(x: number, y: number, width: number, height: number): void;
+ /**
+ * 填充一个矩形。用 setFillStyle() 设置矩形的填充色,如果没设置默认是黑色。
+ */
+ fillRect(x: number, y: number, width: number, height: number): void;
+ /**
+ * 一个矩形(非填充)。用 setFillStroke() 设置矩形线条的颜色,如果没设置默认是黑色。
+ */
+ strokeRect(x: number, y: number, width: number, height: number): void;
+ /**
+ * 在给定的矩形区域内,清除画布上的像素
+ */
+ clearRect(x: number, y: number, width: number, height: number): void;
+ /**
+ * 对当前路径进行填充
+ */
+ fill(): void;
+ /**
+ * 对当前路径进行描边
+ */
+ stroke(): void;
+ /**
+ * 开始一个路径
+ */
+ beginPath(): void;
+ /**
+ * 关闭一个路径
+ */
+ closePath(): void;
+ /**
+ * 把路径移动到画布中的指定点,但不创建线条。
+ */
+ moveTo(x: number, y: number): void;
+ /**
+ * 添加一个新点,然后在画布中创建从该点到最后指定点的线条。
+ */
+ lineTo(x: number, y: number): void;
+ /**
+ * 添加一个弧形路径到当前路径,顺时针绘制。
+ */
+ arc(x: number, y: number, radius: number, startAngle: number, sweepAngle: number): void;
+ /**
+ * 创建二次方贝塞尔曲线
+ */
+ quadraticCurveTo(cpx: number, cpy: number, x: number, y: number): void;
+ /**
+ * 创建三次方贝塞尔曲线
+ */
+ bezierCurveTo(cpx1: number, cpy1: number, cpx2: number, cpy2: number, x: number, y: number): void;
+ /**
+ * 对横纵坐标进行缩放
+ */
+ scale(scaleWidth: number/**横坐标缩放的倍数1 = 100%,0.5 = 50%,2 = 200%,依次类 */, scaleHeight: number/** 纵坐标轴缩放的倍数1 = 100%,0.5 = 50%,2 = 200%,依次类 */): void;
+ /**
+ * 对坐标轴进行顺时针旋转
+ */
+ rotate(deg: number/**degrees * Math.PI/180;degrees范围为0~360;旋转角度,以弧度计 */): void;
+ /**
+ * 对坐标原点进行缩放
+ */
+ translate(x: number/**水平坐标平移量 */, y: number/**竖直坐标平移量 */): void;
+ /**
+ * 在画布上绘制被填充的文本
+ */
+ fillText(text: string, x: number, y: number): void;
+ /**
+ * 设置字体大小
+ */
+ setFontSize(fontSize: number): void;
+ /**
+ * 在画布上绘制图像
+ */
+ drawImage(imageResource: string, x: number, y: number, width: number, height: number): void;
+ /**
+ * 设置全局画笔透明度。
+ */
+ setGlobalAlpha(alpha: number): void;
+ /**
+ * 保存当前坐标轴的缩放、旋转、平移信息
+ */
+ save(): void;
+ /**
+ * 恢复之前保存过的坐标轴的缩放、旋转、平移信息
+ */
+ restore(): void;
+ /**
+ * 进行绘图
+ */
+ draw(): void;
+}
+
+interface IAudioContext {
+ /**
+ * 播放
+ */
+ play: () => void;
+ /**
+ * 暂停
+ */
+ pause: () => void;
+ /**
+ * 跳转到指定位置,单位 s
+ */
+ seek: (position: number) => void;
+}
+
+interface IVideoContext {
+ /**
+ * 播放
+ */
+ play: () => void;
+ /**
+ * 暂停
+ */
+ pause: () => void;
+ /**
+ * 跳转到指定位置,单位 s
+ */
+ seek: (position: number) => void;
+ /**
+ * 发送弹幕,danmu 包含两个属性 text, color。
+ */
+ sendDanmu: (danmu: {text: string; color: string;}) => void;
+}
+
+interface IMapContext {
+ /**
+ * 获取当前地图中心的经纬度,返回的是 gcj02 坐标系,可以用于 wx.openLocation
+ */
+ getCenterLocation: (obj: {
+ /**
+ * 接口调用成功的回调函数 ,res = { longitude: "经度", latitude: "纬度"}
+ */
+ success?: (res: {longitude: string; latitude: string}) => void;
+ /**
+ * 接口调用失败的回调函数
+ */
+ fail?: () => void;
+ /**
+ * 接口调用结束的回调函数(调用成功、失败都会执行)
+ */
+ complete?: () => void;
+ }) => void;
+ /**
+ * 将地图中心移动到当前定位点,需要配合map组件的show-location使用
+ */
+ moveToLocation: () => void;
+}
+
+interface Application {
+ setData: (obj: any) => void;
+}
+
+interface AppConstructor {
+ new (): Application;
+ (opts: {
+ /**
+ * 生命周期函数--监听小程序初始化
+ */
+ onLaunch?: () => void;
+ /**
+ * 生命周期函数--监听小程序显示
+ */
+ onShow?: () => void;
+ /**
+ * 生命周期函数--监听小程序隐藏
+ */
+ onHide?: () => void;
+
+ [key: string]: any;
+ }): Application;
+}
+
+declare var App: AppConstructor;
+declare function getApp(): Application;
+
+declare function getCurrentPages(): Page[];
+
+interface Page {
+ setData: (obj: any) => void;
+}
+
+interface PageConstructor {
+ new (): Page;
+ (opts: {
+ /**
+ * 页面的初始数据
+ */
+ data?: any;
+ /**
+ * 页面的初始数据
+ */
+ onLoad?: () => void;
+ /**
+ * 生命周期函数--监听页面初次渲染完成
+ */
+ onReady?: () => void;
+ /**
+ * 生命周期函数--监听页面显示
+ */
+ onShow?: () => void;
+ /**
+ * 生命周期函数--监听页面隐藏
+ */
+ onHide?: () => void;
+ /**
+ * 生命周期函数--监听页面卸载
+ */
+ onUnload?: () => void;
+ /**
+ * 页面相关事件处理函数--监听用户下拉动作
+ */
+ onPullDownRefreash?: () => void;
+ /**
+ * 页面上拉触底事件的处理函数
+ */
+ onReachBottom?: () => void;
+ /**
+ * 用户点击右上角分享
+ */
+ onShareAppMessage?: () => {
+ /**
+ * 分享标题, 默认值当前小程序名称
+ */
+ title: string;
+ /**
+ * 分享描述, 默认值当前小程序名称
+ */
+ desc: string;
+ /**
+ * 分享路径 默认值当前页面 path ,必须是以 / 开头的完整路径
+ */
+ path: string;
+ };
+
+ [key: string]: any;
+ }): Page;
+}
+
+declare var Page: PageConstructor;
+
+declare var wx: {
+ // # 网络 #
+
+ request(obj: {
+ /**
+ * 开发者服务器接口地址
+ */
+ url: string;
+ /**
+ * 请求的参数
+ */
+ data?: any | string;
+ /**
+ * 设置请求的 header , header 中不能设置 Referer
+ */
+ header?: any;
+ /**
+ * 默认为 GET,有效值:OPTIONS, GET, HEAD, POST, PUT, DELETE, TRACE, CONNECT
+ */
+ method?: string;
+ /**
+ * 默认为 json。如果设置了 dataType 为 json,则会尝试对响应的数据做一次 JSON.parse
+ */
+ dataType?: string;
+ /**
+ * 收到开发者服务成功返回的回调函数,res = {data: '开发者服务器返回的内容'}
+ */
+ success?: Function;
+ /**
+ * 接口调用失败的回调函数
+ */
+ fail?: Function;
+ /**
+ * 接口调用结束的回调函数(调用成功、失败都会执行)
+ */
+ complete?: Function;
+ }): void;
+
+ /**
+ * 将本地资源上传到开发者服务器。如页面通过 wx.chooseImage 等接口获取到一个本地资源的临时文件路径后,可通过此接口将本地资源上传到指定服务器。客户端发起一个 HTTPS POST 请求,其中 content-type 为 multipart/form-data 。
+ */
+ uploadFile(obj: {
+ /**
+ * 开发者服务器 url
+ */
+ url: string;
+ /**
+ * 要上传文件资源的路径
+ */
+ filePath: string;
+ /**
+ * 文件对应的 key , 开发者在服务器端通过这个 key 可以获取到文件二进制内容
+ */
+ name: string;
+ /**
+ * HTTP 请求 Header , header 中不能设置 Referer
+ */
+ header?: any;
+ /**
+ * HTTP 请求中其他额外的 form data
+ */
+ formData?: any;
+ /**
+ * 接口调用成功的回调函数
+ */
+ success?: Function;
+ /**
+ * 接口调用失败的回调函数
+ */
+ fail?: Function;
+ /**
+ * 接口调用结束的回调函数(调用成功、失败都会执行)
+ */
+ complete?: Function;
+ }): void;
+
+ /**
+ * 下载文件资源到本地。客户端直接发起一个 HTTP GET 请求,返回文件的本地临时路径。
+ */
+ downloadFile(obj: {
+ /**
+ * 下载资源的 url
+ */
+ url: string;
+ /**
+ * HTTP 请求 Header
+ */
+ header?: any;
+ /**
+ * 下载成功后以 tempFilePath 的形式传给页面,res = {tempFilePath: '文件的临时路径'}
+ */
+ success?: Function;
+ /**
+ * 接口调用失败的回调函数
+ */
+ fail?: Function;
+ /**
+ * 接口调用结束的回调函数(调用成功、失败都会执行)
+ */
+ complete?: Function;
+ }): void;
+
+ /**
+ * 创建一个 WebSocket 连接;一个微信小程序同时只能有一个 WebSocket 连接,如果当前已存在一个 WebSocket 连接,会自动关闭该连接,并重新创建一个 WebSocket 连接。
+ */
+ connectSocket(obj: {
+ /**
+ * 开发者服务器接口地址,必须是 wss 协议,且域名必须是后台配置的合法域名
+ */
+ url: string;
+ /**
+ * 请求的数据
+ */
+ data?: any;
+ /**
+ * HTTP Header , header 中不能设置 Referer
+ */
+ header?: any;
+ /**
+ * 默认是GET,有效值: OPTIONS, GET, HEAD, POST, PUT, DELETE, TRACE, CONNECT
+ */
+ method?: string;
+ /**
+ * 子协议数组
+ */
+ protocols?: string[];
+ /**
+ * 接口调用成功的回调函数
+ */
+ success?: Function;
+ /**
+ * 接口调用失败的回调函数
+ */
+ fail?: Function;
+ /**
+ * 接口调用结束的回调函数(调用成功、失败都会执行)
+ */
+ complete?: Function;
+ }): void;
+
+ /**
+ * 监听WebSocket连接打开事件。
+ */
+ onSocketOpen(callback: Function): void;
+
+ /**
+ * 监听WebSocket错误。
+ */
+ onSocketError(callback: Function): void;
+
+ /**
+ * 通过 WebSocket 连接发送数据,需要先 wx.connectSocket,并在 wx.onSocketOpen 回调之后才能发送。
+ */
+ sendSocketMessage(obj: {
+ /**
+ * 需要发送的内容
+ */
+ data: undefined;
+ /**
+ * 接口调用成功的回调函数
+ */
+ success?: Function;
+ /**
+ * 接口调用失败的回调函数
+ */
+ fail?: Function;
+ /**
+ * 接口调用结束的回调函数(调用成功、失败都会执行)
+ */
+ complete?: Function;
+ }): void;
+
+ /**
+ * 监听WebSocket接受到服务器的消息事件。
+ */
+ onSocketMessage(callback: Function): void;
+
+ /**
+ * 关闭WebSocket连接。
+ */
+ closeSocket(obj: {
+ /**
+ * 一个数字值表示关闭连接的状态号,表示连接被关闭的原因。如果这个参数没有被指定,默认的取值是1000 (表示正常连接关闭)
+ */
+ code?: number;
+ /**
+ * 一个可读的字符串,表示连接被关闭的原因。这个字符串必须是不长于123字节的UTF-8 文本(不是字符)
+ */
+ reason?: string;
+ /**
+ * 接口调用成功的回调函数
+ */
+ success?: Function;
+ /**
+ * 接口调用失败的回调函数
+ */
+ fail?: Function;
+ /**
+ * 接口调用结束的回调函数(调用成功、失败都会执行)
+ */
+ complete?: Function;
+ }): void;
+
+ /**
+ * 监听WebSocket关闭。
+ */
+ onSocketClose(callback: Function): void;
+
+ // # 媒体 #
+
+ /**
+ * 从本地相册选择图片或使用相机拍照。
+ */
+ chooseImage(obj: {
+ /**
+ * 最多可以选择的图片张数,默认9
+ */
+ count?: number;
+ /**
+ * original 原图,compressed 压缩图,默认二者都有
+ */
+ sizeType?: string[];
+ /**
+ * album 从相册选图,camera 使用相机,默认二者都有
+ */
+ sourceType?: string[];
+ /**
+ * 成功则返回图片的本地文件路径列表 tempFilePaths
+ */
+ success: Function;
+ /**
+ * 接口调用失败的回调函数
+ */
+ fail?: Function;
+ /**
+ * 接口调用结束的回调函数(调用成功、失败都会执行)
+ */
+ complete?: Function;
+ }): void;
+
+ /**
+ * 预览图片。
+ */
+ previewImage(obj: {
+ /**
+ * 当前显示图片的链接,不填则默认为 urls 的第一张
+ */
+ current?: string;
+ /**
+ * 需要预览的图片链接列表
+ */
+ urls: string[];
+ /**
+ * 接口调用成功的回调函数
+ */
+ success?: Function;
+ /**
+ * 接口调用失败的回调函数
+ */
+ fail?: Function;
+ /**
+ * 接口调用结束的回调函数(调用成功、失败都会执行)
+ */
+ complete?: Function;
+ }): void;
+
+ /**
+ * 获取图片信息
+ */
+ getImageInfo(obj: {
+ /**
+ * 图片的路径,可以是相对路径,临时文件路径,存储文件路径,网络图片路径
+ */
+ src: string;
+ /**
+ * 接口调用成功的回调函数
+ */
+ success?: Function;
+ /**
+ * 接口调用失败的回调函数
+ */
+ fail?: Function;
+ /**
+ * 接口调用结束的回调函数(调用成功、失败都会执行)
+ */
+ complete?: Function;
+ }): void;
+
+ saveImageToPhotosAlbum(obj: {
+ /**
+ * 图片文件路径,可以是临时文件路径也可以是永久文件路径,不支持网络图片路径
+ */
+ filePath: string;
+ /**
+ * 接口调用成功的回调函数
+ */
+ success?: Function;
+ /**
+ * 接口调用失败的回调函数
+ */
+ fail?: Function;
+ /**
+ * 接口调用结束的回调函数(调用成功、失败都会执行)
+ */
+ complete?: Function;
+ }): void;
+
+ /**
+ * 开始录音。当主动调用wx.stopRecord,或者录音超过1分钟时自动结束录音,返回录音文件的临时文件路径。当用户离开小程序时,此接口无法调用。
+ */
+ startRecord(obj: {
+ /**
+ * 录音成功后调用,返回录音文件的临时文件路径,res = {tempFilePath: '录音文件的临时路径'}
+ */
+ success?: Function;
+ /**
+ * 接口调用失败的回调函数
+ */
+ fail?: Function;
+ /**
+ * 接口调用结束的回调函数(调用成功、失败都会执行)
+ */
+ complete?: Function;
+ }): void;
+
+ /**
+ * 主动调用停止录音。
+ */
+ stopRecord(): void;
+
+ /**
+ * 开始播放语音,同时只允许一个语音文件正在播放,如果前一个语音文件还没播放完,将中断前一个语音播放。
+ */
+ playVoice(obj: {
+ /**
+ * 需要播放的语音文件的文件路径
+ */
+ filePath: string;
+ /**
+ * 接口调用成功的回调函数
+ */
+ success?: Function;
+ /**
+ * 接口调用失败的回调函数
+ */
+ fail?: Function;
+ /**
+ * 接口调用结束的回调函数(调用成功、失败都会执行)
+ */
+ complete?: Function;
+ }): void;
+
+ /**
+ * 暂停正在播放的语音。再次调用wx.playVoice播放同一个文件时,会从暂停处开始播放。如果想从头开始播放,需要先调用 wx.stopVoice。
+ */
+ pauseVoice(): void;
+
+ /**
+ * 结束播放语音。
+ */
+ stopVoice(): void;
+
+ /**
+ * 获取后台音乐播放状态。
+ */
+ getBackgroundAudioPlayerState(obj: {
+ /**
+ * 接口调用成功的回调函数
+ */
+ success?: Function;
+ /**
+ * 接口调用失败的回调函数
+ */
+ fail?: Function;
+ /**
+ * 接口调用结束的回调函数(调用成功、失败都会执行)
+ */
+ complete?: Function;
+ }): void;
+
+ /**
+ * 使用后台播放器播放音乐,对于微信客户端来说,只能同时有一个后台音乐在播放。当用户离开小程序后,音乐将暂停播放;当用户点击“显示在聊天顶部”时,音乐不会暂停播放;当用户在其他小程序占用了音乐播放器,原有小程序内的音乐将停止播放。
+ */
+ playBackgroundAudio(obj: {
+ /**
+ * 音乐链接,目前支持的格式有 m4a, aac, mp3, wav
+ */
+ dataUrl: string;
+ /**
+ * 音乐标题
+ */
+ title?: string;
+ /**
+ * 封面URL
+ */
+ coverImgUrl?: string;
+ /**
+ * 接口调用成功的回调函数
+ */
+ success?: Function;
+ /**
+ * 接口调用失败的回调函数
+ */
+ fail?: Function;
+ /**
+ * 接口调用结束的回调函数(调用成功、失败都会执行)
+ */
+ complete?: Function;
+ }): void;
+
+ /**
+ * 暂停播放音乐。
+ */
+ pauseBackgroundAudio(): void;
+
+ /**
+ * 控制音乐播放进度。
+ */
+ seekBackgroundAudio(obj: {
+ /**
+ * 音乐位置,单位:秒
+ */
+ position: number;
+ /**
+ * 接口调用成功的回调函数
+ */
+ success?: Function;
+ /**
+ * 接口调用失败的回调函数
+ */
+ fail?: Function;
+ /**
+ * 接口调用结束的回调函数(调用成功、失败都会执行)
+ */
+ complete?: Function;
+ }): void;
+
+ /**
+ * 停止播放音乐。
+ */
+ stopBackgroundAudio(): void;
+
+ /**
+ * 监听音乐播放。
+ */
+ onBackgroundAudioPlay(callback: Function): void;
+
+ /**
+ * 监听音乐暂停。
+ */
+ onBackgroundAudioPause(callback: Function): void;
+
+ /**
+ * 监听音乐停止。
+ */
+ onBackgroundAudioStop(callback: Function): void;
+
+ getBackgroundAudioManager(): void;
+
+ /**
+ * 创建并返回 audio 上下文 audioContext 对象
+ */
+ createAudioContext(audioId: string): IAudioContext;
+
+ /**
+ * 拍摄视频或从手机相册中选视频,返回视频的临时文件路径。
+ */
+ chooseVideo(obj: {
+ /**
+ * album 从相册选视频,camera 使用相机拍摄,默认为:['album', 'camera']
+ */
+ sourceType?: string[];
+ /**
+ * 拍摄视频最长拍摄时间,单位秒。最长支持 60 秒
+ */
+ maxDuration?: number;
+ /**
+ * 默认调起的为前置还是后置摄像头。front: 前置,back: 后置,默认 back
+ */
+ camera?: string;
+ /**
+ * 接口调用成功,返回视频文件的临时文件路径,详见返回参数说明
+ */
+ success?: Function;
+ /**
+ * 接口调用失败的回调函数
+ */
+ fail?: Function;
+ /**
+ * 接口调用结束的回调函数(调用成功、失败都会执行)
+ */
+ complete?: Function;
+ }): void;
+
+ saveVideoToPhotosAlbum(obj: {
+ /**
+ * 视频文件路径,可以是临时文件路径也可以是永久文件路径
+ */
+ filePath: string;
+ /**
+ * 接口调用成功的回调函数
+ */
+ success?: Function;
+ /**
+ * 接口调用失败的回调函数
+ */
+ fail?: Function;
+ /**
+ * 接口调用结束的回调函数(调用成功、失败都会执行)
+ */
+ complete?: Function;
+ }): void;
+
+ /**
+ * 创建并返回 video 上下文 videoContext 对象
+ */
+ createVideoContext(videoId: string): IVideoContext;
+
+ // # 文件 #
+
+ /**
+ * 保存文件到本地。
+ */
+ saveFile(obj: {
+ /**
+ * 需要保存的文件的临时路径
+ */
+ tempFilePath: string;
+ /**
+ * 返回文件的保存路径,res = {savedFilePath: '文件的保存路径'}
+ */
+ success?: Function;
+ /**
+ * 接口调用失败的回调函数
+ */
+ fail?: Function;
+ /**
+ * 接口调用结束的回调函数(调用成功、失败都会执行)
+ */
+ complete?: Function;
+ }): void;
+
+ /**
+ * 获取本地已保存的文件列表
+ */
+ getSavedFileList(obj: {
+ /**
+ * 接口调用成功的回调函数,返回结果见success返回参数说明
+ */
+ success?: Function;
+ /**
+ * 接口调用失败的回调函数
+ */
+ fail?: Function;
+ /**
+ * 接口调用结束的回调函数(调用成功、失败都会执行)
+ */
+ complete?: Function;
+ }): void;
+
+ /**
+ * 获取本地文件的文件信息。此接口只能用于获取已保存到本地的文件,若需要获取临时文件信息,请使用 wx.getFileInfo 接口。
+ */
+ getSavedFileInfo(obj: {
+ /**
+ * 文件路径
+ */
+ filePath: string;
+ /**
+ * 接口调用成功的回调函数,返回结果见success返回参数说明
+ */
+ success?: Function;
+ /**
+ * 接口调用失败的回调函数
+ */
+ fail?: Function;
+ /**
+ * 接口调用结束的回调函数(调用成功、失败都会执行)
+ */
+ complete?: Function;
+ }): void;
+
+ /**
+ * 删除本地存储的文件
+ */
+ removeSavedFile(obj: {
+ /**
+ * 需要删除的文件路径
+ */
+ filePath: string;
+ /**
+ * 接口调用成功的回调函数
+ */
+ success?: Function;
+ /**
+ * 接口调用失败的回调函数
+ */
+ fail?: Function;
+ /**
+ * 接口调用结束的回调函数(调用成功、失败都会执行)
+ */
+ complete?: Function;
+ }): void;
+
+ /**
+ * 新开页面打开文档,支持格式:doc, xls, ppt, pdf, docx, xlsx, pptx
+ */
+ openDocument(obj: {
+ /**
+ * 文件路径,可通过 downFile 获得
+ */
+ filePath: string;
+ /**
+ * 文件类型,指定文件类型打开文件,有效值 doc, xls, ppt, pdf, docx, xlsx, pptx
+ */
+ fileType?: string;
+ /**
+ * 接口调用成功的回调函数
+ */
+ success?: Function;
+ /**
+ * 接口调用失败的回调函数
+ */
+ fail?: Function;
+ /**
+ * 接口调用结束的回调函数(调用成功、失败都会执行)
+ */
+ complete?: Function;
+ }): void;
+
+ getFileInfo(obj: {
+ /**
+ * 本地文件路径
+ */
+ filePath: string;
+ /**
+ * 计算文件摘要的算法,默认值 md5,有效值:md5,sha1
+ */
+ digestAlgorithm?: string;
+ /**
+ * 接口调用成功的回调函数
+ */
+ success?: Function;
+ /**
+ * 接口调用失败的回调函数
+ */
+ fail?: Function;
+ /**
+ * 接口调用结束的回调函数(调用成功、失败都会执行)
+ */
+ complete?: Function;
+ }): void;
+
+ // # 数据缓存 #
+
+ /**
+ * 将数据存储在本地缓存中指定的 key 中,会覆盖掉原来该 key 对应的内容,这是一个异步接口。
+ */
+ setStorage(obj: {
+ /**
+ * 本地缓存中的指定的 key
+ */
+ key: string;
+ /**
+ * 需要存储的内容
+ */
+ data: any;
+ /**
+ * 接口调用成功的回调函数
+ */
+ success?: Function;
+ /**
+ * 接口调用失败的回调函数
+ */
+ fail?: Function;
+ /**
+ * 接口调用结束的回调函数(调用成功、失败都会执行)
+ */
+ complete?: Function;
+ }): void;
+
+ /**
+ * 将 data 存储在本地缓存中指定的 key 中,会覆盖掉原来该 key 对应的内容,这是一个同步接口。
+ */
+ setStorageSync(key: string, data: any, ): void;
+
+ /**
+ * 从本地缓存中异步获取指定 key 对应的内容。
+ */
+ getStorage(obj: {
+ /**
+ * 本地缓存中的指定的 key
+ */
+ key: string;
+ /**
+ * 接口调用的回调函数,res = {data: key对应的内容}
+ */
+ success: Function;
+ /**
+ * 接口调用失败的回调函数
+ */
+ fail?: Function;
+ /**
+ * 接口调用结束的回调函数(调用成功、失败都会执行)
+ */
+ complete?: Function;
+ }): void;
+
+ /**
+ * 从本地缓存中同步获取指定 key 对应的内容。
+ */
+ getStorageSync(key: string): void;
+
+ /**
+ * 异步获取当前storage的相关信息
+ */
+ getStorageInfo(obj: {
+ /**
+ * 接口调用的回调函数,详见返回参数说明
+ */
+ success: Function;
+ /**
+ * 接口调用失败的回调函数
+ */
+ fail?: Function;
+ /**
+ * 接口调用结束的回调函数(调用成功、失败都会执行)
+ */
+ complete?: Function;
+ }): void;
+
+ /**
+ * 同步获取当前storage的相关信息
+ */
+ getStorageInfoSync(): void;
+
+ /**
+ * 从本地缓存中异步移除指定 key 。
+ */
+ removeStorage(obj: {
+ /**
+ * 本地缓存中的指定的 key
+ */
+ key: string;
+ /**
+ * 接口调用的回调函数
+ */
+ success: Function;
+ /**
+ * 接口调用失败的回调函数
+ */
+ fail?: Function;
+ /**
+ * 接口调用结束的回调函数(调用成功、失败都会执行)
+ */
+ complete?: Function;
+ }): void;
+
+ /**
+ * 从本地缓存中同步移除指定 key 。
+ */
+ removeStorageSync(key: string): void;
+
+ /**
+ * 清理本地数据缓存。
+ */
+ clearStorage(): void;
+
+ /**
+ * 同步清理本地数据缓存
+ */
+ clearStorageSync(): void;
+
+ // # 位置 #
+
+ /**
+ * 获取当前的地理位置、速度。当用户离开小程序后,此接口无法调用;当用户点击“显示在聊天顶部”时,此接口可继续调用。
+ */
+ getLocation(obj: {
+ /**
+ * 默认为 wgs84 返回 gps 坐标,gcj02 返回可用于wx.openLocation的坐标
+ */
+ type?: string;
+ /**
+ * 接口调用成功的回调函数,返回内容详见返回参数说明。
+ */
+ success: Function;
+ /**
+ * 接口调用失败的回调函数
+ */
+ fail?: Function;
+ /**
+ * 接口调用结束的回调函数(调用成功、失败都会执行)
+ */
+ complete?: Function;
+ }): void;
+
+ /**
+ * 打开地图选择位置
+ */
+ chooseLocation(obj: {
+ /**
+ * 接口调用成功的回调函数,返回内容详见返回参数说明。
+ */
+ success: Function;
+ /**
+ * 用户取消时调用
+ */
+ cancel?: Function;
+ /**
+ * 接口调用失败的回调函数
+ */
+ fail?: Function;
+ /**
+ * 接口调用结束的回调函数(调用成功、失败都会执行)
+ */
+ complete?: Function;
+ }): void;
+
+ /**
+ * 使用微信内置地图查看位置
+ */
+ openLocation(obj: {
+ /**
+ * 纬度,范围为-90~90,负数表示南纬
+ */
+ latitude: number;
+ /**
+ * 经度,范围为-180~180,负数表示西经
+ */
+ longitude: number;
+ /**
+ * 缩放比例,范围5~18,默认为18
+ */
+ scale?: number;
+ /**
+ * 位置名
+ */
+ name?: string;
+ /**
+ * 地址的详细说明
+ */
+ address?: string;
+ /**
+ * 接口调用成功的回调函数
+ */
+ success?: Function;
+ /**
+ * 接口调用失败的回调函数
+ */
+ fail?: Function;
+ /**
+ * 接口调用结束的回调函数(调用成功、失败都会执行)
+ */
+ complete?: Function;
+ }): void;
+
+ /**
+ * 创建并返回 map 上下文 mapContext 对象
+ */
+ createMapContext(mapId: string): IMapContext;
+
+ // # 设备 #
+
+ /**
+ * 获取系统信息。
+ */
+ getSystemInfo(obj: {
+ /**
+ * 接口调用成功的回调
+ */
+ success: Function;
+ /**
+ * 接口调用失败的回调函数
+ */
+ fail?: Function;
+ /**
+ * 接口调用结束的回调函数(调用成功、失败都会执行)
+ */
+ complete?: Function;
+ }): void;
+
+ /**
+ * 获取系统信息同步接口
+ */
+ getSystemInfoSync(): void;
+
+ /**
+ * 获取网络类型。
+ */
+ getNetworkType(obj: {
+ /**
+ * 接口调用成功,返回网络类型 networkType
+ */
+ success: Function;
+ /**
+ * 接口调用失败的回调函数
+ */
+ fail?: Function;
+ /**
+ * 接口调用结束的回调函数(调用成功、失败都会执行)
+ */
+ complete?: Function;
+ }): void;
+
+ onNetworkStatusChange(callback: Function): void;
+
+ setScreenBrightness(obj: {
+ /**
+ * 屏幕亮度值,范围 0~1,0 最暗,1 最亮
+ */
+ value: number;
+ /**
+ * 接口调用成功
+ */
+ success?: Function;
+ /**
+ * 接口调用失败的回调函数
+ */
+ fail?: Function;
+ /**
+ * 接口调用结束的回调函数(调用成功、失败都会执行)
+ */
+ complete?: Function;
+ }): void;
+
+ getScreenBrightness(obj: {
+ /**
+ * 接口调用成功
+ */
+ success?: Function;
+ /**
+ * 接口调用失败的回调函数
+ */
+ fail?: Function;
+ /**
+ * 接口调用结束的回调函数(调用成功、失败都会执行)
+ */
+ complete?: Function;
+ }): void;
+
+ vibrateLong(obj: {
+ /**
+ * 接口调用成功的回调函数
+ */
+ success?: Function;
+ /**
+ * 接口调用失败的回调函数
+ */
+ fail?: Function;
+ /**
+ * 接口调用结束的回调函数(调用成功、失败都会执行)
+ */
+ complete?: Function;
+ }): void;
+
+ vibrateShort(obj: {
+ /**
+ * 接口调用成功的回调函数
+ */
+ success?: Function;
+ /**
+ * 接口调用失败的回调函数
+ */
+ fail?: Function;
+ /**
+ * 接口调用结束的回调函数(调用成功、失败都会执行)
+ */
+ complete?: Function;
+ }): void;
+
+ /**
+ * 监听加速度数据,频率:5次/秒,接口调用后会自动开始监听,可使用 wx.stopAccelerometer 停止监听。
+ */
+ onAccelerometerChange(callback: Function): void;
+
+ startAccelerometer(obj: {
+ /**
+ * 接口调用成功的回调函数
+ */
+ success?: Function;
+ /**
+ * 接口调用失败的回调函数
+ */
+ fail?: Function;
+ /**
+ * 接口调用结束的回调函数(调用成功、失败都会执行)
+ */
+ complete?: Function;
+ }): void;
+
+ stopAccelerometer(obj: {
+ /**
+ * 接口调用成功的回调函数
+ */
+ success?: Function;
+ /**
+ * 接口调用失败的回调函数
+ */
+ fail?: Function;
+ /**
+ * 接口调用结束的回调函数(调用成功、失败都会执行)
+ */
+ complete?: Function;
+ }): void;
+
+ /**
+ * 监听罗盘数据,频率:5次/秒,接口调用后会自动开始监听,可使用wx.stopCompass停止监听。
+ */
+ onCompassChange(callback: Function): void;
+
+ startCompass(obj: {
+ /**
+ * 接口调用成功的回调函数
+ */
+ success?: Function;
+ /**
+ * 接口调用失败的回调函数
+ */
+ fail?: Function;
+ /**
+ * 接口调用结束的回调函数(调用成功、失败都会执行)
+ */
+ complete?: Function;
+ }): void;
+
+ stopCompass(obj: {
+ /**
+ * 接口调用成功的回调函数
+ */
+ success?: Function;
+ /**
+ * 接口调用失败的回调函数
+ */
+ fail?: Function;
+ /**
+ * 接口调用结束的回调函数(调用成功、失败都会执行)
+ */
+ complete?: Function;
+ }): void;
+
+ makePhoneCall(obj: {
+ /**
+ * 需要拨打的电话号码
+ */
+ phoneNumber: string;
+ /**
+ * 接口调用成功的回调
+ */
+ success?: Function;
+ /**
+ * 接口调用失败的回调函数
+ */
+ fail?: Function;
+ /**
+ * 接口调用结束的回调函数(调用成功、失败都会执行)
+ */
+ complete?: Function;
+ }): void;
+
+ /**
+ * 调起客户端扫码界面,扫码成功后返回对应的结果
+ */
+ scanCode(obj: {
+ /**
+ * 是否只能从相机扫码,不允许从相册选择图片
+ */
+ onlyFromCamera?: boolean;
+ /**
+ * 接口调用成功的回调函数,返回内容详见返回参数说明。
+ */
+ success?: Function;
+ /**
+ * 接口调用失败的回调函数
+ */
+ fail?: Function;
+ /**
+ * 接口调用结束的回调函数(调用成功、失败都会执行)
+ */
+ complete?: Function;
+ }): void;
+
+ setClipboardData(obj: {
+ /**
+ * 需要设置的内容
+ */
+ data: string;
+ /**
+ * 接口调用成功的回调函数
+ */
+ success?: Function;
+ /**
+ * 接口调用失败的回调函数
+ */
+ fail?: Function;
+ /**
+ * 接口调用结束的回调函数(调用成功、失败都会执行)
+ */
+ complete?: Function;
+ }): void;
+
+ getClipboardData(obj: {
+ /**
+ * 接口调用成功的回调函数
+ */
+ success?: Function;
+ /**
+ * 接口调用失败的回调函数
+ */
+ fail?: Function;
+ /**
+ * 接口调用结束的回调函数(调用成功、失败都会执行)
+ */
+ complete?: Function;
+ }): void;
+
+ openBluetoothAdapter(obj: {
+ /**
+ * 成功则返回成功初始化信息
+ */
+ success: Function;
+ /**
+ * 接口调用失败的回调函数
+ */
+ fail?: Function;
+ /**
+ * 接口调用结束的回调函数(调用成功、失败都会执行)
+ */
+ complete?: Function;
+ }): void;
+
+ closeBluetoothAdapter(obj: {
+ /**
+ * 成功则返回成功关闭模块信息
+ */
+ success: Function;
+ /**
+ * 接口调用失败的回调函数
+ */
+ fail?: Function;
+ /**
+ * 接口调用结束的回调函数(调用成功、失败都会执行)
+ */
+ complete?: Function;
+ }): void;
+
+ getBluetoothAdapterState(obj: {
+ /**
+ * 成功则返回本机蓝牙适配器状态
+ */
+ success: Function;
+ /**
+ * 接口调用失败的回调函数
+ */
+ fail?: Function;
+ /**
+ * 接口调用结束的回调函数(调用成功、失败都会执行)
+ */
+ complete?: Function;
+ }): void;
+
+ onBluetoothAdapterStateChange(callback: Function): void;
+
+ startBluetoothDevicesDiscovery(obj: {
+ /**
+ * 蓝牙设备主 service 的 uuid 列表
+ */
+ services?: Array;
+ /**
+ * 是否允许重复上报同一设备, 如果允许重复上报,则onDeviceFound 方法会多次上报同一设备,但是 RSSI 值会有不同
+ */
+ allowDuplicatesKey?: boolean;
+ /**
+ * 上报设备的间隔,默认为0,意思是找到新设备立即上报,否则根据传入的间隔上报
+ */
+ interval?: number;
+ /**
+ * 成功则返回本机蓝牙适配器状态
+ */
+ success: Function;
+ /**
+ * 接口调用失败的回调函数
+ */
+ fail?: Function;
+ /**
+ * 接口调用结束的回调函数(调用成功、失败都会执行)
+ */
+ complete?: Function;
+ }): void;
+
+ stopBluetoothDevicesDiscovery(obj: {
+ /**
+ * 成功则返回本机蓝牙适配器状态
+ */
+ success: Function;
+ /**
+ * 接口调用失败的回调函数
+ */
+ fail?: Function;
+ /**
+ * 接口调用结束的回调函数(调用成功、失败都会执行)
+ */
+ complete?: Function;
+ }): void;
+
+ getBluetoothDevices(obj: {
+ /**
+ * 成功则返回本机蓝牙适配器状态
+ */
+ success: Function;
+ /**
+ * 接口调用失败的回调函数
+ */
+ fail?: Function;
+ /**
+ * 接口调用结束的回调函数(调用成功、失败都会执行)
+ */
+ complete?: Function;
+ }): void;
+
+ onBluetoothDeviceFound(callback: Function): void;
+
+ getConnectedBluetoothDevices(obj: {
+ /**
+ * 蓝牙设备主 service 的 uuid 列表
+ */
+ services: Array;
+ /**
+ * 成功则返回本机蓝牙适配器状态
+ */
+ success: Function;
+ /**
+ * 接口调用失败的回调函数
+ */
+ fail?: Function;
+ /**
+ * 接口调用结束的回调函数(调用成功、失败都会执行)
+ */
+ complete?: Function;
+ }): void;
+
+ createBLEConnection(obj: {
+ /**
+ * 蓝牙设备 id,参考 getDevices 接口
+ */
+ deviceId: string;
+ /**
+ * 成功则返回本机蓝牙适配器状态
+ */
+ success: Function;
+ /**
+ * 接口调用失败的回调函数
+ */
+ fail?: Function;
+ /**
+ * 接口调用结束的回调函数(调用成功、失败都会执行)
+ */
+ complete?: Function;
+ }): void;
+
+ closeBLEConnection(obj: {
+ /**
+ * 蓝牙设备 id,参考 getDevices 接口
+ */
+ deviceId: string;
+ /**
+ * 成功则返回本机蓝牙适配器状态
+ */
+ success: Function;
+ /**
+ * 接口调用失败的回调函数
+ */
+ fail?: Function;
+ /**
+ * 接口调用结束的回调函数(调用成功、失败都会执行)
+ */
+ complete?: Function;
+ }): void;
+
+ getBLEDeviceServices(obj: {
+ /**
+ * 蓝牙设备 id,参考 getDevices 接口
+ */
+ deviceId: string;
+ /**
+ * 成功则返回本机蓝牙适配器状态
+ */
+ success: Function;
+ /**
+ * 接口调用失败的回调函数
+ */
+ fail?: Function;
+ /**
+ * 接口调用结束的回调函数(调用成功、失败都会执行)
+ */
+ complete?: Function;
+ }): void;
+
+ getBLEDeviceCharacteristics(obj: {
+ /**
+ * 蓝牙设备 id,参考 device 对象
+ */
+ deviceId: string;
+ /**
+ * 蓝牙服务 uuid
+ */
+ serviceId: string;
+ /**
+ * 成功则返回本机蓝牙适配器状态
+ */
+ success: Function;
+ /**
+ * 接口调用失败的回调函数
+ */
+ fail?: Function;
+ /**
+ * 接口调用结束的回调函数(调用成功、失败都会执行)
+ */
+ complete?: Function;
+ }): void;
+
+ readBLECharacteristicValue(obj: {
+ /**
+ * 蓝牙设备 id,参考 device 对象
+ */
+ deviceId: string;
+ /**
+ * 蓝牙特征值对应服务的 uuid
+ */
+ serviceId: string;
+ /**
+ * 蓝牙特征值的 uuid
+ */
+ characteristicId: string;
+ /**
+ * 成功则返回本机蓝牙适配器状态
+ */
+ success: Function;
+ /**
+ * 接口调用失败的回调函数
+ */
+ fail?: Function;
+ /**
+ * 接口调用结束的回调函数(调用成功、失败都会执行)
+ */
+ complete?: Function;
+ }): void;
+
+ writeBLECharacteristicValue(obj: {
+ /**
+ * 蓝牙设备 id,参考 device 对象
+ */
+ deviceId: string;
+ /**
+ * 蓝牙特征值对应服务的 uuid
+ */
+ serviceId: string;
+ /**
+ * 蓝牙特征值的 uuid
+ */
+ characteristicId: string;
+ /**
+ * 蓝牙设备特征值对应的二进制值(注意:vConsole 无法打印出 ArrayBuffer 类型数据)
+ */
+ value: undefined;
+ /**
+ * 成功则返回本机蓝牙适配器状态
+ */
+ success: Function;
+ /**
+ * 接口调用失败的回调函数
+ */
+ fail?: Function;
+ /**
+ * 接口调用结束的回调函数(调用成功、失败都会执行)
+ */
+ complete?: Function;
+ }): void;
+
+ notifyBLECharacteristicValueChange(obj: {
+ /**
+ * 蓝牙设备 id,参考 device 对象
+ */
+ deviceId: string;
+ /**
+ * 蓝牙特征值对应服务的 uuid
+ */
+ serviceId: string;
+ /**
+ * 蓝牙特征值的 uuid
+ */
+ characteristicId: string;
+ /**
+ * true: 启用 notify; false: 停用 notify
+ */
+ state: boolean;
+ /**
+ * 成功则返回本机蓝牙适配器状态
+ */
+ success: Function;
+ /**
+ * 接口调用失败的回调函数
+ */
+ fail?: Function;
+ /**
+ * 接口调用结束的回调函数(调用成功、失败都会执行)
+ */
+ complete?: Function;
+ }): void;
+
+ onBLEConnectionStateChange(callback: Function): void;
+
+ onBLECharacteristicValueChange(callback: Function): void;
+
+ startBeaconDiscovery(obj: {
+ /**
+ * iBeacon设备广播的 uuids
+ */
+ uuids: string[];
+ /**
+ * 接口调用成功的回调函数
+ */
+ success?: Function;
+ /**
+ * 接口调用失败的回调函数
+ */
+ fail?: Function;
+ /**
+ * 接口调用结束的回调函数(调用成功、失败都会执行)
+ */
+ complete?: Function;
+ }): void;
+
+ stopBeaconDiscovery(obj: {
+ /**
+ * 接口调用成功的回调函数
+ */
+ success?: Function;
+ /**
+ * 接口调用失败的回调函数
+ */
+ fail?: Function;
+ /**
+ * 接口调用结束的回调函数(调用成功、失败都会执行)
+ */
+ complete?: Function;
+ }): void;
+
+ getBeacons(obj: {
+ /**
+ * 接口调用成功的回调函数
+ */
+ success?: Function;
+ /**
+ * 接口调用失败的回调函数
+ */
+ fail?: Function;
+ /**
+ * 接口调用结束的回调函数(调用成功、失败都会执行)
+ */
+ complete?: Function;
+ }): void;
+
+ onBeaconUpdate(callback: Function): void;
+
+ onBeaconServiceChange(callback: Function): void;
+
+ onUserCaptureScreen(callback: Function): void;
+
+ addPhoneContact(obj: {
+ /**
+ * 头像本地文件路径
+ */
+ photoFilePath?: string;
+ /**
+ * 昵称
+ */
+ nickName?: string;
+ /**
+ * 姓氏
+ */
+ lastName?: string;
+ /**
+ * 中间名
+ */
+ middleName?: string;
+ /**
+ * 名字
+ */
+ firstName: string;
+ /**
+ * 备注
+ */
+ remark?: string;
+ /**
+ * 手机号
+ */
+ mobilePhoneNumber?: string;
+ /**
+ * 微信号
+ */
+ weChatNumber?: string;
+ /**
+ * 联系地址国家
+ */
+ addressCountry?: string;
+ /**
+ * 联系地址省份
+ */
+ addressState?: string;
+ /**
+ * 联系地址城市
+ */
+ addressCity?: string;
+ /**
+ * 联系地址街道
+ */
+ addressStreet?: string;
+ /**
+ * 联系地址邮政编码
+ */
+ addressPostalCode?: string;
+ /**
+ * 公司
+ */
+ organization?: string;
+ /**
+ * 职位
+ */
+ title?: string;
+ /**
+ * 工作传真
+ */
+ workFaxNumber?: string;
+ /**
+ * 工作电话
+ */
+ workPhoneNumber?: string;
+ /**
+ * 公司电话
+ */
+ hostNumber?: string;
+ /**
+ * 电子邮件
+ */
+ email?: string;
+ /**
+ * 网站
+ */
+ url?: string;
+ /**
+ * 工作地址国家
+ */
+ workAddressCountry?: string;
+ /**
+ * 工作地址省份
+ */
+ workAddressState?: string;
+ /**
+ * 工作地址城市
+ */
+ workAddressCity?: string;
+ /**
+ * 工作地址街道
+ */
+ workAddressStreet?: string;
+ /**
+ * 工作地址邮政编码
+ */
+ workAddressPostalCode?: string;
+ /**
+ * 住宅传真
+ */
+ homeFaxNumber?: string;
+ /**
+ * 住宅电话
+ */
+ homePhoneNumber?: string;
+ /**
+ * 住宅地址国家
+ */
+ homeAddressCountry?: string;
+ /**
+ * 住宅地址省份
+ */
+ homeAddressState?: string;
+ /**
+ * 住宅地址城市
+ */
+ homeAddressCity?: string;
+ /**
+ * 住宅地址街道
+ */
+ homeAddressStreet?: string;
+ /**
+ * 住宅地址邮政编码
+ */
+ homeAddressPostalCode?: string;
+ /**
+ * 接口调用成功
+ */
+ success?: Function;
+ /**
+ * 接口调用失败的回调函数
+ */
+ fail?: Function;
+ /**
+ * 接口调用结束的回调函数(调用成功、失败都会执行)
+ */
+ complete?: Function;
+ }): void;
+
+ // # 界面 #
+
+ /**
+ * 显示消息提示框
+ */
+ showToast(obj: {
+ /**
+ * 提示的内容
+ */
+ title: string;
+ /**
+ * 图标,有效值 "success", "loading"
+ */
+ icon?: string;
+ /**
+ * 自定义图标的本地路径,image 的优先级高于 icon
+ */
+ image?: string;
+ /**
+ * 提示的延迟时间,单位毫秒,默认:1500
+ */
+ duration?: number;
+ /**
+ * 是否显示透明蒙层,防止触摸穿透,默认:false
+ */
+ mask?: boolean;
+ /**
+ * 接口调用成功的回调函数
+ */
+ success?: Function;
+ /**
+ * 接口调用失败的回调函数
+ */
+ fail?: Function;
+ /**
+ * 接口调用结束的回调函数(调用成功、失败都会执行)
+ */
+ complete?: Function;
+ }): void;
+
+ showLoading(obj: {
+ /**
+ * 提示的内容
+ */
+ title: string;
+ /**
+ * 是否显示透明蒙层,防止触摸穿透,默认:false
+ */
+ mask?: boolean;
+ /**
+ * 接口调用成功的回调函数
+ */
+ success?: Function;
+ /**
+ * 接口调用失败的回调函数
+ */
+ fail?: Function;
+ /**
+ * 接口调用结束的回调函数(调用成功、失败都会执行)
+ */
+ complete?: Function;
+ }): void;
+
+ /**
+ * 隐藏消息提示框
+ */
+ hideToast(): void;
+
+ hideLoading(): void;
+
+ /**
+ * 显示模态弹窗
+ */
+ showModal(obj: {
+ /**
+ * 提示的标题
+ */
+ title: string;
+ /**
+ * 提示的内容
+ */
+ content: string;
+ /**
+ * 是否显示取消按钮,默认为 true
+ */
+ showCancel?: boolean;
+ /**
+ * 取消按钮的文字,默认为"取消",最多 4 个字符
+ */
+ cancelText?: string;
+ /**
+ * 取消按钮的文字颜色,默认为"#000000"
+ */
+ cancelColor?: undefined;
+ /**
+ * 确定按钮的文字,默认为"确定",最多 4 个字符
+ */
+ confirmText?: string;
+ /**
+ * 确定按钮的文字颜色,默认为"#3CC51F"
+ */
+ confirmColor?: undefined;
+ /**
+ * 接口调用成功的回调函数
+ */
+ success?: Function;
+ /**
+ * 接口调用失败的回调函数
+ */
+ fail?: Function;
+ /**
+ * 接口调用结束的回调函数(调用成功、失败都会执行)
+ */
+ complete?: Function;
+ }): void;
+
+ /**
+ * 显示操作菜单
+ */
+ showActionSheet(obj: {
+ /**
+ * 按钮的文字数组,数组长度最大为6个
+ */
+ itemList: undefined;
+ /**
+ * 按钮的文字颜色,默认为"#000000"
+ */
+ itemColor?: undefined;
+ /**
+ * 接口调用成功的回调函数,详见返回参数说明
+ */
+ success?: Function;
+ /**
+ * 接口调用失败的回调函数
+ */
+ fail?: Function;
+ /**
+ * 接口调用结束的回调函数(调用成功、失败都会执行)
+ */
+ complete?: Function;
+ }): void;
+
+ setTopBarText(obj: {
+ /**
+ * 置顶栏文字内容
+ */
+ text: string;
+ /**
+ * 接口调用成功的回调函数
+ */
+ success?: Function;
+ /**
+ * 接口调用失败的回调函数
+ */
+ fail?: Function;
+ /**
+ * 接口调用结束的回调函数(调用成功、失败都会执行)
+ */
+ complete?: Function;
+ }): void;
+
+ /**
+ * 动态设置当前页面的标题。
+ */
+ setNavigationBarTitle(obj: {
+ /**
+ * 页面标题
+ */
+ title: string;
+ /**
+ * 接口调用成功的回调函数
+ */
+ success?: Function;
+ /**
+ * 接口调用失败的回调函数
+ */
+ fail?: Function;
+ /**
+ * 接口调用结束的回调函数(调用成功、失败都会执行)
+ */
+ complete?: Function;
+ }): void;
+
+ /**
+ * 在当前页面显示导航条加载动画。
+ */
+ showNavigationBarLoading(): void;
+
+ /**
+ * 隐藏导航条加载动画。
+ */
+ hideNavigationBarLoading(): void;
+
+ /**
+ * 保留当前页面,跳转到应用内的某个页面,使用wx.navigateBack可以返回到原页面。
+ */
+ navigateTo(obj: {
+ /**
+ * 需要跳转的应用内非 tabBar 的页面的路径 , 路径后可以带参数。参数与路径之间使用?分隔,参数键与参数值用=相连,不同参数用&分隔;如 'path?key=value&key2=value2'
+ */
+ url: string;
+ /**
+ * 接口调用成功的回调函数
+ */
+ success?: Function;
+ /**
+ * 接口调用失败的回调函数
+ */
+ fail?: Function;
+ /**
+ * 接口调用结束的回调函数(调用成功、失败都会执行)
+ */
+ complete?: Function;
+ }): void;
+
+ /**
+ * 关闭当前页面,跳转到应用内的某个页面。
+ */
+ redirectTo(obj: {
+ /**
+ * 需要跳转的应用内非 tabBar 的页面的路径,路径后可以带参数。参数与路径之间使用?分隔,参数键与参数值用=相连,不同参数用&分隔;如 'path?key=value&key2=value2'
+ */
+ url: string;
+ /**
+ * 接口调用成功的回调函数
+ */
+ success?: Function;
+ /**
+ * 接口调用失败的回调函数
+ */
+ fail?: Function;
+ /**
+ * 接口调用结束的回调函数(调用成功、失败都会执行)
+ */
+ complete?: Function;
+ }): void;
+
+ reLaunch(obj: {
+ /**
+ * 需要跳转的应用内页面路径 , 路径后可以带参数。参数与路径之间使用?分隔,参数键与参数值用=相连,不同参数用&分隔;如 'path?key=value&key2=value2',如果跳转的页面路径是 tabBar 页面则不能带参数
+ */
+ url: string;
+ /**
+ * 接口调用成功的回调函数
+ */
+ success?: Function;
+ /**
+ * 接口调用失败的回调函数
+ */
+ fail?: Function;
+ /**
+ * 接口调用结束的回调函数(调用成功、失败都会执行)
+ */
+ complete?: Function;
+ }): void;
+
+ /**
+ * 跳转到 tabBar 页面,并关闭其他所有非 tabBar 页面
+ */
+ switchTab(obj: {
+ /**
+ * 需要跳转的 tabBar 页面的路径(需在 app.json 的 tabBar 字段定义的页面),路径后不能带参数
+ */
+ url: string;
+ /**
+ * 接口调用成功的回调函数
+ */
+ success?: Function;
+ /**
+ * 接口调用失败的回调函数
+ */
+ fail?: Function;
+ /**
+ * 接口调用结束的回调函数(调用成功、失败都会执行)
+ */
+ complete?: Function;
+ }): void;
+
+ /**
+ * 关闭当前页面,返回上一页面或多级页面。可通过 getCurrentPages()) 获取当前的页面栈,决定需要返回几层。
+ */
+ navigateBack(obj: {
+ /**
+ * 返回的页面数,如果 delta 大于现有页面数,则返回到首页。
+ */
+ delta?: number;
+ }): void;
+
+ /**
+ * 创建一个动画实例animation。调用实例的方法来描述动画。最后通过动画实例的export方法导出动画数据传递给组件的animation属性。
+ */
+ createAnimation(obj: {
+ /**
+ * 400
+ */
+ duration?: number;
+ /**
+ * "linear"
+ */
+ timingFunction?: string;
+ /**
+ * 0
+ */
+ delay?: number;
+ /**
+ * "50% 50% 0"
+ */
+ transformOrigin?: string;
+ }): IAnimation;
+
+ pageScrollTo(obj: {
+ /**
+ * 滚动到页面的目标位置(单位px)
+ */
+ scrollTop: number;
+ }): void;
+
+ /**
+ * 创建 canvas 绘图上下文(指定 canvasId).Tip: 需要指定 canvasId,该绘图上下文只作用于对应的
+ */
+ createCanvasContext(canvasId: string): ICanvasContext;
+
+ /**
+ * 把当前画布的内容导出生成图片,并返回文件路径
+ */
+ canvasToTempFilePath(canvasId: string): void;
+
+ startPullDownRefresh(obj: {
+ /**
+ * 接口调用成功的回调函数
+ */
+ success?: Function;
+ /**
+ * 接口调用失败的回调函数
+ */
+ fail?: Function;
+ /**
+ * 接口调用结束的回调函数(调用成功、失败都会执行)
+ */
+ complete?: Function;
+ }): void;
+
+ /**
+ * 停止当前页面下拉刷新。
+ */
+ stopPullDownRefresh(): void;
+
+ // # WXML节点信息 #
+
+ // # 第三方平台 #
+
+ getExtConfig(obj: {
+ /**
+ * 返回第三方平台自定义的数据
+ */
+ success?: Function;
+ /**
+ * 接口调用失败的回调函数
+ */
+ fail?: Function;
+ /**
+ * 接口调用结束的回调函数(调用成功、失败都会执行)
+ */
+ complete?: Function;
+ }): void;
+
+ getExtConfigSync(): void;
+
+ // # 开放接口 #
+
+ /**
+ * 调用接口获取登录凭证(code)进而换取用户登录态信息,包括用户的唯一标识(openid) 及本次登录的 会话密钥(session_key)。用户数据的加解密通讯需要依赖会话密钥完成。
+ */
+ login(obj: {
+ /**
+ * 接口调用成功的回调函数
+ */
+ success?: Function;
+ /**
+ * 接口调用失败的回调函数
+ */
+ fail?: Function;
+ /**
+ * 接口调用结束的回调函数(调用成功、失败都会执行)
+ */
+ complete?: Function;
+ }): void;
+
+ /**
+ * 通过上述接口获得的用户登录态拥有一定的时效性。用户越久未使用小程序,用户登录态越有可能失效。反之如果用户一直在使用小程序,则用户登录态一直保持有效。具体时效逻辑由微信维护,对开发者透明。开发者只需要调用wx.checkSession接口检测当前用户登录态是否有效。登录态过期后开发者可以再调用wx.login获取新的用户登录态。
+ */
+ checkSession(obj: {
+ /**
+ * 接口调用成功的回调函数,登录态未过期
+ */
+ success?: Function;
+ /**
+ * 接口调用失败的回调函数,登录态已过期
+ */
+ fail?: Function;
+ /**
+ * 接口调用结束的回调函数(调用成功、失败都会执行)
+ */
+ complete?: Function;
+ }): void;
+
+ authorize(obj: {
+ /**
+ * 需要获取权限的scope,详见 scope 列表
+ */
+ scope: string;
+ /**
+ * 接口调用成功的回调函数
+ */
+ success?: Function;
+ /**
+ * 接口调用失败的回调函数
+ */
+ fail?: Function;
+ /**
+ * 接口调用结束的回调函数(调用成功、失败都会执行)
+ */
+ complete?: Function;
+ }): void;
+
+ /**
+ * 获取用户信息,withCredentials 为 true 时需要先调用 wx.login 接口。
+ */
+ getUserInfo(obj: {
+ /**
+ * 是否带上登录态信息
+ */
+ withCredentials?: boolean;
+ /**
+ * 指定返回用户信息的语言,zh_CN 简体中文,zh_TW 繁体中文,en 英文
+ */
+ lang?: string;
+ /**
+ * 接口调用成功的回调函数
+ */
+ success?: Function;
+ /**
+ * 接口调用失败的回调函数
+ */
+ fail?: Function;
+ /**
+ * 接口调用结束的回调函数(调用成功、失败都会执行)
+ */
+ complete?: Function;
+ }): void;
+
+ /**
+ * 发起微信支付。
+ */
+ requestPayment(obj: {
+ /**
+ * 时间戳从1970年1月1日00:00:00至今的秒数,即当前的时间
+ */
+ timeStamp: string;
+ /**
+ * 随机字符串,长度为32个字符以下。
+ */
+ nonceStr: string;
+ /**
+ * 统一下单接口返回的 prepay_id 参数值,提交格式如:prepay_id=*
+ */
+ package: string;
+ /**
+ * 签名算法,暂支持 MD5
+ */
+ signType: string;
+ /**
+ * 签名,具体签名方案参见小程序支付接口文档;
+ */
+ paySign: string;
+ /**
+ * 接口调用成功的回调函数
+ */
+ success?: Function;
+ /**
+ * 接口调用失败的回调函数
+ */
+ fail?: Function;
+ /**
+ * 接口调用结束的回调函数(调用成功、失败都会执行)
+ */
+ complete?: Function;
+ }): void;
+
+ chooseAddress(obj: {
+ /**
+ * 返回用户选择的收货地址信息
+ */
+ success?: Function;
+ /**
+ * 接口调用失败的回调函数
+ */
+ fail?: Function;
+ /**
+ * 接口调用结束的回调函数(调用成功、失败都会执行)
+ */
+ complete?: Function;
+ }): void;
+
+ addCard(obj: {
+ /**
+ * 需要添加的卡券列表,列表内对象说明请参见请求对象说明
+ */
+ cardList: undefined;
+ /**
+ * 接口调用成功的回调函数
+ */
+ success?: Function;
+ /**
+ * 接口调用失败的回调函数
+ */
+ fail?: Function;
+ /**
+ * 接口调用结束的回调函数(调用成功、失败都会执行)
+ */
+ complete?: Function;
+ }): void;
+
+ openCard(obj: {
+ /**
+ * 需要打开的卡券列表,列表内参数详见openCard 请求对象说明
+ */
+ cardList: undefined;
+ /**
+ * 接口调用成功的回调函数
+ */
+ success?: Function;
+ /**
+ * 接口调用失败的回调函数
+ */
+ fail?: Function;
+ /**
+ * 接口调用结束的回调函数(调用成功、失败都会执行)
+ */
+ complete?: Function;
+ }): void;
+
+ openSetting(obj: {
+ /**
+ * 接口调用成功的回调函数,返回内容详见返回参数说明。
+ */
+ success?: Function;
+ /**
+ * 接口调用失败的回调函数
+ */
+ fail?: Function;
+ /**
+ * 接口调用结束的回调函数(调用成功、失败都会执行)
+ */
+ complete?: Function;
+ }): void;
+
+ getSetting(obj: {
+ /**
+ * 接口调用成功的回调函数,返回内容详见返回参数说明。
+ */
+ success?: Function;
+ /**
+ * 接口调用失败的回调函数
+ */
+ fail?: Function;
+ /**
+ * 接口调用结束的回调函数(调用成功、失败都会执行)
+ */
+ complete?: Function;
+ }): void;
+
+ getWeRunData(obj: {
+ /**
+ * 接口调用成功的回调函数
+ */
+ success?: Function;
+ /**
+ * 接口调用失败的回调函数
+ */
+ fail?: Function;
+ /**
+ * 接口调用结束的回调函数(调用成功、失败都会执行)
+ */
+ complete?: Function;
+ }): void;
+
+ navigateToMiniProgram(obj: {
+ /**
+ * 要打开的小程序 appId
+ */
+ appId: string;
+ /**
+ * 打开的页面路径,如果为空则打开首页
+ */
+ path?: string;
+ /**
+ * 需要传递给目标小程序的数据,目标小程序可在 App.onLaunch(),App.onShow() 中获取到这份数据。详情
+ */
+ extraData?: any;
+ /**
+ * 要打开的小程序版本,有效值 develop(开发版),trial(体验版),release(正式版) ,仅在当前小程序为开发版或体验版时此参数有效;如果当前小程序是体验版或正式版,则打开的小程序必定是正式版。默认值 release
+ */
+ envVersion?: string;
+ /**
+ * 接口调用成功的回调函数
+ */
+ success?: Function;
+ /**
+ * 接口调用失败的回调函数
+ */
+ fail?: Function;
+ /**
+ * 接口调用结束的回调函数(调用成功、失败都会执行)
+ */
+ complete?: Function;
+ }): void;
+
+ chooseInvoiceTitle(obj: {
+ /**
+ * 接口调用成功的回调函数
+ */
+ success?: Function;
+ /**
+ * 接口调用失败的回调函数
+ */
+ fail?: Function;
+ /**
+ * 接口调用结束的回调函数(调用成功、失败都会执行)
+ */
+ complete?: Function;
+ }): void;
+
+ checkIsSupportSoterAuthentication(obj: {
+ /**
+ * 接口调用成功的回调函数
+ */
+ success?: Function;
+ /**
+ * 接口调用失败的回调函数
+ */
+ fail?: Function;
+ /**
+ * 接口调用结束的回调函数(调用成功、失败都会执行)
+ */
+ complete?: Function;
+ }): void;
+
+ // # 数据 #
+
+ /**
+ * 自定义分析数据上报接口。使用前,需要在小程序管理后台自定义分析中新建事件,配置好事件名与字段。
+ */
+ reportAnalytics(eventName: string, data: string, ): void;
+
+ // # 拓展接口 #
+
+ arrayBufferToBase64(arrayBuffer: string): void;
+
+ base64ToArrayBuffer(base64: string): void;
+
+ // # 调试接口 #
+
+ setEnableDebug(obj: {
+ /**
+ * 是否打开调试
+ */
+ enableDebug: boolean;
+ /**
+ * 接口调用成功的回调函数
+ */
+ success?: Function;
+ /**
+ * 接口调用失败的回调函数
+ */
+ fail?: Function;
+ /**
+ * 接口调用结束的回调函数(调用成功、失败都会执行)
+ */
+ complete?: Function;
+ }): void;
+
+}
\ No newline at end of file