DefinitelyTyped/types/ali-app/ali-app-tests.ts
2018-10-31 11:22:41 +08:00

2154 lines
43 KiB
TypeScript
Raw Permalink Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

(() => {
// https://docs.alipay.com/mini/api/ui-navigate
my.navigateTo({
url: 'new_page?count=100'
});
// test.js
Page({
onLoad(query: any) {
my.alert({
content: JSON.stringify(query),
});
}
});
my.redirectTo({
url: 'new_page?count=100'
});
// 注意:调用 navigateTo 跳转时,调用该方法的页面会被加入堆栈,
// 而 redirectTo 方法则不会。见下方示例代码
// 此处是one页面
my.navigateTo({
url: 'two?pageId=10000'
});
// 此处是two页面
my.navigateTo({
url: 'one?pageId=99999'
});
// 在three页面内 navigateBack将返回one页面
my.navigateBack({
delta: 2
});
my.reLaunch({
url: '/page/index'
});
my.setNavigationBar({
title: '你好',
backgroundColor: '#108ee9',
success() {
my.alert({
content: '设置成功',
});
},
fail() {
my.alert({
content: '设置是失败',
});
},
});
my.showNavigationBarLoading();
my.hideNavigationBarLoading();
})();
(() => {
// https://docs.alipay.com/mini/api/ui-tabbar
my.switchTab({
url: '/home'
});
})();
(() => {
// https://docs.alipay.com/mini/api/ui-feedback
my.alert({
title: '亲',
content: '您本月的账单已出',
buttonText: '我知道了',
success: () => {
my.alert({
title: '用户点击了「我知道了」',
});
},
});
my.confirm({
title: '温馨提示',
content: '您是否想查询快递单号1234567890',
confirmButtonText: '马上查询',
cancelButtonText: '暂不需要',
success: (result) => {
my.alert({
title: `${result.confirm}`,
});
},
});
my.prompt({
title: '标题单行',
message: '说明当前状态、提示用户解决方案,最好不要超过两行。',
placeholder: '给朋友留言',
okButtonText: '确定',
cancelButtonText: '取消',
success: (result) => {
my.alert({
title: JSON.stringify(result),
});
},
});
my.showToast({
type: 'success',
content: '操作成功',
duration: 3000,
success: () => {
my.alert({
title: 'toast 消失了',
});
},
});
my.hideToast();
my.showLoading({
content: '加载中...',
delay: 1000,
});
my.hideLoading();
Page({
onLoad() {
my.showLoading();
const that = this;
setTimeout(() => {
my.hideLoading({
page: that, // 防止执行时已经切换到其它页面page指向不准确
});
}, 4000);
}
});
my.showNavigationBarLoading();
my.hideNavigationBarLoading();
my.showActionSheet({
title: '支付宝-ActionSheet',
items: ['菜单一', '菜单二', '菜单三', '菜单四', '菜单五'],
badges: [
{ index: 0, type: 'none' },
{ index: 1, type: 'point' },
{ index: 2, type: 'num', text: '99' },
{ index: 3, type: 'text', text: '推荐' },
{ index: 4, type: 'more' }],
cancelButtonText: '取消好了',
success: (res) => {
const btn = res.index === -1 ? '取消' : `${res.index}`;
my.alert({
title: `你点了${btn}按钮`
});
},
});
})();
(() => {
// https://docs.alipay.com/mini/api/ui-pulldown
Page({
onPullDownRefresh() {
my.stopPullDownRefresh();
}
});
})();
(() => {
// https://docs.alipay.com/mini/api/ui-contact
my.choosePhoneContact({
success: (res) => {
my.alert({
content: `姓名:${res.name}\n号码${res.mobile}`
});
}
});
my.chooseAlipayContact({
count: 2,
success: (res) => {
my.alert({
content: 'chooseAlipayContact response: ' + JSON.stringify(res)
});
},
fail: (res) => {
my.alert({
content: 'chooseAlipayContact response: ' + JSON.stringify(res)
});
}
});
my.chooseContact({
chooseType: 'multi', // 多选模式
includeMe: true, // 包含自己
includeMobileContactMode: 'known', // 仅包含双向手机通讯录联系人,也即双方手机通讯录都存有对方号码的联系人
multiChooseMax: 3, // 最多能选择三个联系人
multiChooseMaxTips: '超过选择的最大人数了',
success: (res) => {
my.alert({
content: 'chooseContact : ' + JSON.stringify(res)
});
},
fail: (res) => {
my.alert({
content: 'chooseContact : ' + JSON.stringify(res)
});
}
});
})();
(() => {
// https://docs.alipay.com/mini/api/ui-city
my.chooseCity({
cities: [
{
city: '朝阳区',
adCode: '110105',
spell: 'chaoyang'
},
{
city: '海淀区',
adCode: '110108',
spell: 'haidian'
},
{
city: '丰台区',
adCode: '110106',
spell: 'fengtai'
},
{
city: '东城区',
adCode: '110101',
spell: 'dongcheng'
},
{
city: '西城区',
adCode: '110102',
spell: 'xicheng'
},
{
city: '房山区',
adCode: '110111',
spell: 'fangshan'
}
],
hotCities: [
{
city: '朝阳区',
adCode: '110105'
},
{
city: '海淀区',
adCode: '110108'
},
{
city: '丰台区',
adCode: '110106'
}
],
success: (res) => {
my.alert({
content: `${res.city}:${res.adCode}`
});
},
});
})();
(() => {
// https://docs.alipay.com/mini/api/ui-date
my.datePicker({
format: 'yyyy-MM-dd',
currentDate: '2012-12-12',
startDate: '2012-12-10',
endDate: '2012-12-15',
success: (res) => {
my.alert({
content: res.date,
});
}
});
})();
(() => {
// https://docs.alipay.com/mini/api/ui-animation
const animation = my.createAnimation({
transformOrigin: "top right",
duration: 3000,
timeFunction: "ease-in-out",
delay: 100,
});
Page({
data: {
animationInfo: {}
},
onShow() {
const animation = my.createAnimation({
duration: 1000,
timeFunction: 'ease-in-out',
});
this.animation = animation;
animation.scale(3, 3).rotate(60).step();
this.setData({
animationInfo: animation.export()
});
setTimeout(() => {
animation.translate(35).step();
this.setData({
animationInfo: animation.export(),
});
}, 1500);
},
rotateAndScale(this: my.Page) {
// 旋转同时放大
this.animation.rotate(60).scale(3, 3).step();
this.setData({
animationInfo: this.animation.export(),
});
},
rotateThenScale(this: my.Page) {
// 先旋转后放大
this.animation.rotate(60).step();
this.animation.scale(3, 3).step();
this.setData({
animationInfo: this.animation.export(),
});
},
rotateAndScaleThenTranslate(this: my.Page) {
// 先旋转同时放大,然后平移
this.animation.rotate(60).scale(3, 3).step();
this.animation.translate(100, 100).step({ duration: 2000 });
this.setData({
animationInfo: this.animation.export()
});
}
});
})();
(() => {
// https://docs.alipay.com/mini/api/ui-canvas
const ctx = my.createCanvasContext('awesomeCanvas');
ctx.toTempFilePath({
success() { },
});
ctx.setTextAlign("left");
ctx.fillText("Hello world", 0, 100);
ctx.setTextBaseline("top");
ctx.fillText("Hello world", 0, 100);
ctx.setFillStyle('blue');
ctx.fillRect(50, 50, 100, 175);
ctx.draw();
ctx.setStrokeStyle('blue');
ctx.strokeRect(50, 50, 100, 175);
ctx.draw();
ctx.setFillStyle('red');
ctx.setShadow(15, 45, 45, 'yellow');
ctx.fillRect(20, 20, 100, 175);
ctx.draw();
const grd = ctx.createLinearGradient(10, 10, 150, 10);
grd.addColorStop(0, 'yellow');
grd.addColorStop(1, 'blue');
ctx.setFillStyle(grd);
ctx.fillRect(20, 20, 250, 180);
ctx.draw();
grd.addColorStop(0, 'blue');
grd.addColorStop(1, 'red');
ctx.setFillStyle(grd);
ctx.fillRect(20, 20, 250, 180);
ctx.draw();
grd.addColorStop(0.36, 'orange');
grd.addColorStop(0.56, 'cyan');
grd.addColorStop(0.63, 'yellow');
grd.addColorStop(0.76, 'blue');
grd.addColorStop(0.54, 'green');
grd.addColorStop(1, 'purple');
grd.addColorStop(0.4, 'red');
ctx.setFillStyle(grd);
ctx.fillRect(20, 20, 250, 180);
ctx.draw();
ctx.beginPath();
ctx.moveTo(20, 20);
ctx.lineTo(250, 10);
ctx.stroke();
ctx.beginPath();
ctx.setLineWidth(10);
ctx.moveTo(20, 35);
ctx.lineTo(250, 30);
ctx.stroke();
ctx.beginPath();
ctx.setLineWidth(20);
ctx.moveTo(20, 50);
ctx.lineTo(250, 55);
ctx.stroke();
ctx.beginPath();
ctx.setLineWidth(25);
ctx.moveTo(20, 80);
ctx.lineTo(250, 85);
ctx.stroke();
ctx.draw();
ctx.beginPath();
ctx.moveTo(10, 10);
ctx.lineTo(150, 10);
ctx.stroke();
ctx.beginPath();
ctx.setLineCap('round');
ctx.setLineWidth(20);
ctx.moveTo(20, 70);
ctx.lineTo(250, 80);
ctx.stroke();
ctx.beginPath();
ctx.setLineCap('butt');
ctx.setLineWidth(10);
ctx.moveTo(25, 80);
ctx.lineTo(250, 30);
ctx.stroke();
ctx.beginPath();
ctx.setLineCap('square');
ctx.setLineWidth(10);
ctx.moveTo(35, 47);
ctx.lineTo(230, 120);
ctx.stroke();
ctx.draw();
ctx.beginPath();
ctx.moveTo(20, 30);
ctx.lineTo(150, 70);
ctx.lineTo(20, 100);
ctx.stroke();
ctx.beginPath();
ctx.setLineJoin('round');
ctx.setLineWidth(20);
ctx.moveTo(100, 20);
ctx.lineTo(280, 80);
ctx.lineTo(100, 100);
ctx.stroke();
ctx.beginPath();
ctx.setLineJoin('bevel');
ctx.setLineWidth(20);
ctx.moveTo(60, 25);
ctx.lineTo(180, 80);
ctx.lineTo(90, 100);
ctx.stroke();
ctx.beginPath();
ctx.setLineJoin('miter');
ctx.setLineWidth(15);
ctx.moveTo(130, 70);
ctx.lineTo(250, 50);
ctx.lineTo(230, 100);
ctx.stroke();
ctx.draw();
ctx.beginPath();
ctx.setLineWidth(15);
ctx.setLineJoin('miter');
ctx.setMiterLimit(1);
ctx.moveTo(10, 10);
ctx.lineTo(100, 50);
ctx.lineTo(10, 90);
ctx.stroke();
ctx.beginPath();
ctx.setLineWidth(15);
ctx.setLineJoin('miter');
ctx.setMiterLimit(2);
ctx.moveTo(50, 10);
ctx.lineTo(140, 50);
ctx.lineTo(50, 90);
ctx.stroke();
ctx.beginPath();
ctx.setLineWidth(15);
ctx.setLineJoin('miter');
ctx.setMiterLimit(3);
ctx.moveTo(90, 10);
ctx.lineTo(180, 50);
ctx.lineTo(90, 90);
ctx.stroke();
ctx.draw();
ctx.rect(20, 20, 250, 80);
ctx.setFillStyle('blue');
ctx.fill();
ctx.draw();
ctx.fillRect(20, 20, 250, 80);
ctx.setFillStyle('blue');
ctx.draw();
ctx.setStrokeStyle('blue');
ctx.strokeRect(20, 20, 250, 80);
ctx.draw();
ctx.setFillStyle('blue');
ctx.fillRect(250, 10, 250, 200);
ctx.setFillStyle('yellow');
ctx.fillRect(0, 0, 150, 200);
ctx.clearRect(10, 10, 150, 75);
ctx.draw();
ctx.moveTo(20, 20);
ctx.lineTo(200, 20);
ctx.lineTo(200, 200);
ctx.fill();
ctx.draw();
ctx.rect(20, 20, 110, 40);
ctx.setFillStyle('blue');
ctx.fill();
ctx.beginPath();
ctx.rect(20, 30, 150, 40);
ctx.setFillStyle('yellow');
ctx.fillRect(20, 80, 150, 40);
ctx.rect(20, 150, 150, 40);
ctx.setFillStyle('red');
ctx.fill();
ctx.draw();
ctx.moveTo(20, 20);
ctx.lineTo(150, 10);
ctx.lineTo(150, 150);
ctx.stroke();
ctx.draw();
ctx.rect(10, 10, 100, 30);
ctx.setStrokeStyle('blue');
ctx.stroke();
ctx.beginPath();
ctx.rect(20, 50, 150, 50);
ctx.setStrokeStyle('yellow');
ctx.strokeRect(15, 75, 200, 35);
ctx.rect(20, 200, 150, 30);
ctx.setStrokeStyle('red');
ctx.stroke();
ctx.draw();
ctx.rect(20, 20, 150, 50);
ctx.setFillStyle('blue');
ctx.fill();
ctx.beginPath();
ctx.rect(20, 50, 150, 40);
ctx.setFillStyle('yellow');
ctx.fillRect(20, 170, 150, 40);
ctx.rect(10, 100, 100, 30);
ctx.setFillStyle('red');
ctx.fill();
ctx.draw();
ctx.moveTo(20, 20);
ctx.lineTo(150, 20);
ctx.lineTo(150, 150);
ctx.closePath();
ctx.stroke();
ctx.draw();
ctx.rect(20, 20, 150, 50);
ctx.closePath();
ctx.beginPath();
ctx.rect(20, 50, 150, 40);
ctx.setFillStyle('red');
ctx.fillRect(20, 80, 120, 30);
ctx.rect(20, 150, 150, 40);
ctx.setFillStyle('blue');
ctx.fill();
ctx.draw();
ctx.moveTo(20, 20);
ctx.lineTo(150, 15);
ctx.moveTo(20, 55);
ctx.lineTo(120, 60);
ctx.stroke();
ctx.draw();
ctx.moveTo(20, 20);
ctx.rect(20, 20, 80, 30);
ctx.lineTo(120, 80);
ctx.stroke();
ctx.draw();
ctx.arc(200, 75, 50, 0, 2 * Math.PI);
ctx.setFillStyle('#CCCCCC');
ctx.fill();
ctx.beginPath();
ctx.moveTo(50, 65);
ctx.lineTo(170, 80);
ctx.moveTo(200, 35);
ctx.lineTo(200, 235);
ctx.setStrokeStyle('#AAAAAA');
ctx.stroke();
ctx.setFontSize(12);
ctx.setFillStyle('yellow');
ctx.fillText('0', 165, 78);
ctx.fillText('0.6*PI', 96, 148);
ctx.fillText('1*PI', 15, 57);
ctx.fillText('1.7*PI', 94, 20);
ctx.beginPath();
ctx.arc(200, 85, 2, 0, 2 * Math.PI);
ctx.setFillStyle('blue');
ctx.fill();
ctx.beginPath();
ctx.arc(200, 35, 2, 0, 2 * Math.PI);
ctx.setFillStyle('green');
ctx.fill();
ctx.beginPath();
ctx.arc(450, 60, 2, 0, 2 * Math.PI);
ctx.setFillStyle('red');
ctx.fill();
ctx.beginPath();
ctx.arc(150, 35, 50, 0, 1.8 * Math.PI);
ctx.setStrokeStyle('#666666');
ctx.stroke();
ctx.draw();
ctx.beginPath();
ctx.arc(30, 30, 2, 0, 2 * Math.PI);
ctx.setFillStyle('red');
ctx.fill();
ctx.beginPath();
ctx.arc(250, 25, 2, 0, 2 * Math.PI);
ctx.setFillStyle('blue');
ctx.fill();
ctx.beginPath();
ctx.arc(20, 100, 2, 0, 2 * Math.PI);
ctx.arc(200, 100, 2, 0, 2 * Math.PI);
ctx.setFillStyle('green');
ctx.fill();
ctx.setFillStyle('yellow');
ctx.setFontSize(14);
ctx.beginPath();
ctx.moveTo(30, 30);
ctx.lineTo(30, 100);
ctx.lineTo(150, 75);
ctx.moveTo(250, 30);
ctx.lineTo(250, 80);
ctx.lineTo(70, 75);
ctx.setStrokeStyle('#EEEEEE');
ctx.stroke();
ctx.beginPath();
ctx.moveTo(30, 30);
ctx.bezierCurveTo(30, 150, 250, 150, 180, 20);
ctx.setStrokeStyle('black');
ctx.stroke();
ctx.draw();
ctx.beginPath();
ctx.arc(30, 30, 2, 0, 2 * Math.PI);
ctx.setFillStyle('red');
ctx.fill();
ctx.beginPath();
ctx.arc(250, 20, 2, 0, 2 * Math.PI);
ctx.setFillStyle('blue');
ctx.fill();
ctx.beginPath();
ctx.arc(30, 200, 2, 0, 2 * Math.PI);
ctx.setFillStyle('green');
ctx.fill();
ctx.setFillStyle('black');
ctx.setFontSize(12);
ctx.beginPath();
ctx.moveTo(30, 30);
ctx.lineTo(30, 150);
ctx.lineTo(250, 30);
ctx.setStrokeStyle('#AAAAAA');
ctx.stroke();
ctx.beginPath();
ctx.moveTo(30, 30);
ctx.quadraticCurveTo(30, 150, 250, 25);
ctx.setStrokeStyle('black');
ctx.stroke();
ctx.draw();
ctx.strokeRect(15, 15, 30, 25);
ctx.scale(3, 3);
ctx.strokeRect(15, 15, 30, 25);
ctx.scale(3, 3);
ctx.strokeRect(15, 15, 30, 25);
ctx.draw();
ctx.strokeRect(200, 20, 180, 150);
ctx.rotate(30 * Math.PI / 180);
ctx.strokeRect(200, 20, 180, 150);
ctx.rotate(30 * Math.PI / 180);
ctx.strokeRect(200, 20, 180, 150);
ctx.draw();
ctx.strokeRect(20, 20, 250, 80);
ctx.translate(30, 30);
ctx.strokeRect(20, 20, 250, 80);
ctx.translate(30, 30);
ctx.strokeRect(20, 20, 250, 80);
ctx.draw();
ctx.setFontSize(14);
ctx.fillText('14', 20, 20);
ctx.setFontSize(22);
ctx.fillText('22', 40, 40);
ctx.setFontSize(30);
ctx.fillText('30', 60, 60);
ctx.setFontSize(38);
ctx.fillText('38', 90, 90);
ctx.draw();
ctx.setFontSize(42);
ctx.fillText('Hello', 30, 30);
ctx.fillText('alipay', 200, 200);
ctx.draw();
ctx.drawImage('https://img.alicdn.com/tfs/TB1GvVMj2BNTKJjy0FdXXcPpVXa-520-280.jpg', 2, 2, 250, 80);
ctx.draw();
ctx.setFillStyle('yellow');
ctx.fillRect(10, 10, 150, 100);
ctx.setGlobalAlpha(0.2);
ctx.setFillStyle('blue');
ctx.fillRect(50, 50, 150, 100);
ctx.setFillStyle('red');
ctx.fillRect(100, 100, 150, 100);
ctx.draw();
ctx.setLineDash([5, 15, 25]);
ctx.beginPath();
ctx.moveTo(0, 100);
ctx.lineTo(400, 100);
ctx.stroke();
ctx.draw();
ctx.rotate(45 * Math.PI / 180);
ctx.setFillStyle('red');
ctx.fillRect(70, 0, 100, 30);
ctx.transform(1, 1, 0, 1, 0, 0);
ctx.setFillStyle('#000');
ctx.fillRect(0, 0, 100, 100);
ctx.draw();
ctx.rotate(45 * Math.PI / 180);
ctx.setFillStyle('red');
ctx.fillRect(70, 0, 100, 30);
ctx.setTransform(1, 1, 0, 1, 0, 0);
ctx.setFillStyle('#000');
ctx.fillRect(0, 0, 100, 100);
ctx.draw();
ctx.save();
ctx.setFillStyle('red');
ctx.fillRect(20, 20, 250, 80);
ctx.restore();
ctx.fillRect(60, 60, 155, 130);
ctx.draw();
ctx.setFillStyle('blue');
ctx.fillRect(20, 20, 180, 80);
ctx.draw();
ctx.fillRect(60, 60, 250, 120);
ctx.draw(true);
ctx.font = 'italic bold 50px cursive';
const { width } = ctx.measureText('hello world');
console.log(width);
})();
(() => {
// https://docs.alipay.com/mini/api/ui-map
Page({
onReady() {
// 使用 my.createMapContext 获取 map 上下文
this.mapCtx = my.createMapContext('userMap');
},
getCenterLocation(this: my.Page) {
(this.mapCtx as my.MapContext).getCenterLocation({
success(res) {
console.log(res.longitude);
console.log(res.latitude);
}
});
},
moveToLocation() {
this.mapCtx.moveToLocation();
}
});
})();
(() => {
// https://docs.alipay.com/mini/api/ui-hidekeyboard
my.hideKeyboard();
})();
(() => {
// https://docs.alipay.com/mini/api/scroll
my.pageScrollTo({
scrollTop: 100
});
})();
(() => {
// https://docs.alipay.com/mini/api/selector-query
Page({
onReady() {
my.createSelectorQuery()
.select('#non-exists').boundingClientRect()
.select('#one').boundingClientRect()
.selectAll('.all').boundingClientRect()
.select('#scroll').scrollOffset()
.selectViewport().boundingClientRect()
.selectViewport().scrollOffset().exec((ret) => {
console.log(JSON.stringify(ret, null, 2));
});
},
});
})();
(() => {
// https://docs.alipay.com/mini/api/ewdxl3
my.multiLevelSelect({
title: 'nihao', // 级联选择标题
list: [
{
name: "杭州市", // 条目名称
subList: [
{
name: "西湖区",
subList: [
{
name: "古翠街道"
},
{
name: "文新街道"
}
]
},
{
name: "上城区",
subList: [
{
name: "延安街道"
},
{
name: "龙翔桥街道"
}
]
}
]// 级联子数据列表
}
]// 级联数据列表
});
})();
(() => {
// https://docs.alipay.com/mini/api/openapi-authorize
my.getAuthCode({
scopes: 'auth_user',
success: (res) => {
my.alert({
content: res.authCode,
});
},
});
})();
(() => {
// https://docs.alipay.com/mini/api/userinfo
my.getAuthCode({
scopes: 'auth_user',
success: (res) => {
my.getAuthUserInfo({
success: (userInfo) => {
my.alert({
content: userInfo.nickName
});
my.alert({
content: userInfo.avatar
});
}
});
},
});
})();
(() => {
// https://docs.alipay.com/mini/api/openapi-pay
my.tradePay({
tradeNO: '201711152100110410533667792', // 调用统一收单交易创建接口alipay.trade.create获得返回字段支付宝交易号trade_no
success: (res) => {
my.alert({
content: JSON.stringify(res),
});
},
fail: (res) => {
my.alert({
content: JSON.stringify(res),
});
}
});
})();
(() => {
// https://docs.alipay.com/mini/api/pay-sign
my.paySignCenter({
// tslint:disable-next-line:max-line-length
signStr: 'biz_content%3D%257B%2522access_params%2522%253A%257B%2522channel%2522%253A%2522ALIPAYAPP%2522%257D%252C%2522external_agreement_no%2522%253A%2522xidong___2317%2522%252C%2522external_logon_id%2522%253A%252213852852877%2522%252C%2522personal_product_code%2522%253A%2522GENERAL_WITHHOLDING_P%2522%252C%2522product_code%2522%253A%2522GENERAL_WITHHOLDING%2522%252C%2522sign_scene%2522%253A%2522INDUSTRY%257CCARRENTAL%2522%252C%2522third_party_type%2522%253A%2522PARTNER%2522%257D%26sign%3Df3pjBDTRftOwXWnCqAMAnkBfGTFlcMmZI8hEgmV6uREZRXVDuLsSjD8WO%252FeZ1fjDG8GqVO9t1AN7q6yCUHKX%252Bw%252FE7efXwpVDWldr4iVuXDtNd3UJDJUiRJhIm6b73czWacVzm1XIery%252F2DyKI2y08tBf5NNWuQCC3d%252FITxziTl8%253D%26timestamp%3D2017-06-27%2B14%253A44%253A00%26sign_type%3DRSA%26notify_url%3Dhttp%253A%252F%252Fapi.test.alipay.net%252Fatinterface%252Freceive_notify.htm%26charset%3DUTF-8%26app_id%3D2017060101317939%26method%3Dalipay.user.agreement.page.sign%26return_url%3Dhttp%253A%252F%252Fapi.test.alipay.net%252Fatinterface%252Freceive_notify.htm%26version%3D1.0',
success: (res) => {
my.alert({
title: 'success', // alert框的标题
content: JSON.stringify(res)
});
},
fail: (res) => {
my.alert({
title: 'fail', // alert框的标题
content: JSON.stringify(res)
});
}
});
})();
(() => {
// https://docs.alipay.com/mini/api/card-voucher-ticket
my.openCardList();
my.openMerchantCardList({ partnerId: '2088xxxxx' });
// 传入passId来打开
my.openCardDetail({ passId: "11xxxxx" });
my.openVoucherList();
my.openMerchantVoucherList({ partnerId: '2088xxxx' });
// 传入passId来打开
my.openVoucherDetail({ passId: "20170921" });
// 传入partnerId 和 serialNumber来打开
my.openVoucherDetail({
partnerId: "2018xxxx",
serialNumber: "20170921"
});
// 传入passId来打开
my.openKBVoucherDetail({ passId: "20170921" });
// 传入partnerId 和 serialNumber来打开
my.openKBVoucherDetail({
partnerId: "2088xxxx",
serialNumber: "20170921"
});
my.openTicketList();
my.openMerchantTicketList({ partnerId: '2088xxxx' });
// 传入passId来打开
my.openTicketDetail({ passId: "20170921" });
// 传入partnerId 和 serialNumber来打开
my.openTicketDetail({
partnerId: "2088xxxx",
serialNumber: "20170921"
});
})();
(() => {
// https://docs.alipay.com/mini/api/add-card-auth
my.addCardAuth({
url: '从 openapi 接口获取到的 url',
success: (res) => {
my.alert({ content: '授权成功' });
},
fail: (res) => {
my.alert({ content: '授权失败' });
},
});
})();
(() => {
// https://docs.alipay.com/mini/api/zm-service
my.startZMVerify({
bizNo: 'your-biz-no',
success: (res) => {
my.alert({ title: 'success:' + JSON.stringify(res) });
},
fail: (res) => {
my.alert({ title: 'fail: ' + JSON.stringify(res) });
},
});
})();
(() => {
// https://docs.alipay.com/mini/api/zmcreditborrow
my.zmCreditBorrow({
credit_biz: "",
out_order_no: "",
borrow_shop_name: "",
goods_name: "",
product_code: "w1010100000000002858",
rent_unit: "HOUR_YUAN",
rent_amount: "0.10",
deposit_amount: "0.50",
deposit_state: "Y",
invoke_return_url: "",
invoke_type: "TINYAPP",
borrow_time: "2017-04-27 10:01:01",
expiry_time: "2017-05-27 10:01:01",
rent_info: "2hour-free",
success: (res) => {
try {
const { resultStatus, result } = res;
switch (resultStatus) {
case '9000':
const callbackData = result.callbackData;
const decodedCallbackData = decodeURIComponent(callbackData);
const json = JSON.parse(decodedCallbackData.match(/{.*}/)!.toString());
const jsonStr = JSON.stringify(json, null, 4);
if (json.success === true || json.success === 'true') {
// 创建订单成功, 此时可以跳转到订单详情页面
my.alert({ content: '下单成功: ' + jsonStr });
} else {
// 创建订单失败, 请提示用户创建失败
my.alert({ content: '下单失败: ' + jsonStr });
}
// (this as any as my.Page).setData({
// callbackData,
// decodedCallbackData,
// parsedJSON: jsonStr,
// });
break;
case '6001':
// 用户点击返回, 取消此次服务, 此时可以给提示
my.alert({ content: '取消' });
break;
default:
break;
}
} catch (error) {
// 异常, 请在这里提示用户稍后重试
my.alert({
content: '异常' + JSON.stringify(error, null, 4)
});
}
},
fail: (error) => {
// 调用接口失败, 请在这里提示用户稍后重试
my.alert({
content: '调用失败' + JSON.stringify(error, null, 4)
});
}
});
})();
(() => {
// https://docs.alipay.com/mini/api/templatemessage
})();
(() => {
// https://docs.alipay.com/mini/api/text-identification
my.textRiskIdentification({
content: '加我支付宝',
type: ['keyword', '0', '1', '2', '3'],
success: (res) => {
my.alert({
title: 'ok', // alert 框的标题
content: JSON.stringify(res),
});
},
fail: (res) => {
my.alert({
title: 'fail', // alert 框的标题
content: JSON.stringify(res),
});
},
});
})();
(() => {
// https://docs.alipay.com/mini/api/open-miniprogram
my.navigateToMiniProgram({
appId: 'xxxx',
extraData: {
data1: "test"
},
success: (res) => {
console.log(JSON.stringify(res));
},
fail: (res) => {
console.log(JSON.stringify(res));
}
});
my.navigateBackMiniProgram({
extraData: {
data1: "test"
},
success: (res) => {
console.log(JSON.stringify(res));
},
fail: (res) => {
console.log(JSON.stringify(res));
}
});
})();
(() => {
// https://docs.alipay.com/mini/api/webview-context
Page({
onLoad() {
this.webViewContext = my.createWebViewContext('web-view-1');
},
// 接收来自H5的消息
onMessage(e: any) {
console.log(e); // {'sendToMiniProgram': '0'}
// 向H5发送消息
this.webViewContext.postMessage({ sendToWebView: '1' });
}
});
// H5的js代码中需要先定义my.onMessage 用于接收来自小程序的消息。
my.onMessage = (e) => {
console.log(e); // {'sendToWebView': '1'}
};
// H5想小程序发送消息
my.postMessage({ sendToMiniProgram: '0' });
})();
(() => {
// https://docs.alipay.com/mini/api/media-image
const img = null as any as HTMLImageElement;
my.chooseImage({
count: 2,
success: (res) => {
img.src = res.apFilePaths[0];
},
});
my.previewImage({
current: 2,
urls: [
'https://img.alicdn.com/tps/TB1sXGYIFXXXXc5XpXXXXXXXXXX.jpg',
'https://img.alicdn.com/tps/TB1pfG4IFXXXXc6XXXXXXXXXXXX.jpg',
'https://img.alicdn.com/tps/TB1h9xxIFXXXXbKXXXXXXXXXXXX.jpg'
],
});
my.saveImage({
url: 'https://img.alicdn.com/tps/TB1sXGYIFXXXXc5XpXXXXXXXXXX.jpg'
});
my.compressImage({
apFilePaths: ['https://resource/apmlcc0ed184daffc5a0d8da86b2f518cf7b.image'],
// level: 1,
success: (res) => {
console.log(JSON.stringify(res));
}
});
// 网络图片路径
my.getImageInfo({
src: 'https://img.alicdn.com/tps/TB1sXGYIFXXXXc5XpXXXXXXXXXX.jpg',
success: (res) => {
console.log(JSON.stringify(res));
}
});
// apFilePath
my.chooseImage({
success: (res) => {
my.getImageInfo({
src: res.apFilePaths[0],
success: (res) => {
console.log(JSON.stringify(res));
}
});
},
});
// 相对路径
my.getImageInfo({
src: 'image/api.png',
success: (res) => {
console.log(JSON.stringify(res));
}
});
})();
(() => {
// https://docs.alipay.com/mini/api/storage
my.setStorage({
key: 'currentCity',
data: {
cityName: '杭州',
adCode: '330100',
spell: ' hangzhou',
},
success() {
my.alert({ content: '写入成功' });
}
});
my.setStorageSync({
key: 'currentCity',
data: {
cityName: '杭州',
adCode: '330100',
spell: ' hangzhou',
}
});
my.getStorage({
key: 'currentCity',
success(res) {
my.alert({ content: '获取成功:' + res.data.cityName });
},
fail(res) {
my.alert({ content: res.errorMessage });
}
});
const res = my.getStorageSync({ key: 'currentCity' });
my.alert({
content: JSON.stringify(res.data),
});
my.removeStorage({
key: 'currentCity',
success() {
my.alert({ content: '删除成功' });
}
});
my.removeStorageSync({
key: 'currentCity',
});
my.clearStorage();
my.clearStorageSync();
my.getStorageInfo({
success(res) {
console.log(res.keys);
console.log(res.currentSize);
console.log(res.limitSize);
}
});
const res1 = my.getStorageInfoSync();
console.log(res1.keys);
console.log(res1.currentSize);
console.log(res1.limitSize);
})();
(() => {
// https://docs.alipay.com/mini/api/file
my.chooseImage({
success: (res) => {
my.saveFile({
apFilePath: res.apFilePaths[0],
success: (res) => {
console.log(JSON.stringify(res));
},
});
},
});
my.getFileInfo({
apFilePath: 'https://resource/apml953bb093ebd2834530196f50a4413a87.video',
digestAlgorithm: 'sha1',
success: (res) => {
console.log(JSON.stringify(res));
}
});
my.getSavedFileInfo({
apFilePath: 'https://resource/apml953bb093ebd2834530196f50a4413a87.video',
success: (res) => {
console.log(JSON.stringify(res));
}
});
my.getSavedFileList({
success: (res) => {
console.log(JSON.stringify(res));
}
});
my.getSavedFileList({
success: (res) => {
my.removeSavedFile({
apFilePath: res.fileList[0].apFilePath,
success: (res) => {
console.log('remove success');
}
});
}
});
})();
(() => {
// https://docs.alipay.com/mini/api/location
my.getLocation({
success(res) {
my.hideLoading();
console.log(res);
/* that对象为Page可以设置数据刷新界面
that.setData({
hasLocation: true,
location: formatLocation(res.longitude, res.latitude)
})
*/
},
fail() {
my.hideLoading();
my.alert({ title: '定位失败' });
},
});
my.openLocation({
longitude: '121.549697',
latitude: '31.227250',
name: '支付宝',
address: '杨高路地铁站',
});
my.chooseLocation({
success: (res) => {
console.log(res);
}
});
})();
(() => {
// https://docs.alipay.com/mini/api/network
my.httpRequest({
url: 'http://httpbin.org/post',
method: 'POST',
data: {
from: '支付宝',
production: 'AlipayJSAPI',
},
dataType: 'json',
success(res) {
my.alert({ content: 'success' });
},
fail(res) {
my.alert({ content: 'fail' });
},
complete(res) {
my.hideLoading();
my.alert({ content: 'complete' });
}
});
my.uploadFile({
url: '请使用自己服务器地址',
fileType: 'image',
fileName: 'file',
filePath: '...',
success: (res) => {
my.alert({
content: '上传成功'
});
},
});
my.downloadFile({
url: 'http://img.alicdn.com/tfs/TB1x669SXXXXXbdaFXXXXXXXXXX-520-280.jpg',
success({ apFilePath }) {
my.previewImage({
urls: [apFilePath],
});
},
fail(res) {
my.alert({
content: res.errorMessage || res.error,
});
},
});
my.connectSocket({
url: 'test.php',
data: {},
header: {
'content-type': 'application/json'
},
method: 'GET'
});
my.connectSocket({
url: 'test.php',
});
my.onSocketOpen(() => {
console.log('WebSocket 连接已打开!');
});
Page({
onLoad() {
this.callback = this.callback.bind(this);
my.onSocketOpen(this.callback);
},
onUnload() {
my.offSocketOpen(this.callback);
},
callback() {
},
});
my.connectSocket({
url: '开发者的服务器地址'
});
my.onSocketOpen(() => {
console.log('WebSocket 连接已打开!');
});
my.onSocketError(() => {
console.log('WebSocket 连接打开失败,请检查!');
});
Page({
onLoad() {
this.callback = this.callback.bind(this);
my.onSocketError(this.callback);
},
onUnload() {
my.offSocketError(this.callback);
},
callback() {
my.sendSocketMessage({
data: this.data.toSendMessage, // 需要发送的内容
success: (res) => {
my.alert({ content: '数据发送!' + this.data.toSendMessage });
},
});
},
});
my.connectSocket({
url: '服务器地址'
});
my.onSocketMessage((res) => {
console.log('收到服务器内容:' + res.data);
});
my.onSocketOpen(() => {
my.closeSocket();
});
my.onSocketClose(() => {
console.log('WebSocket 已关闭!');
});
Page({
// onLoad() {
onLaunch() {
// 注意: 回调方法的注册在整个小程序启动阶段只要做一次,调多次会有多次回调
my.onSocketClose(() => {
my.alert({ content: '连接已关闭!' });
this.setData({
sendMessageAbility: false,
closeLinkAbility: false,
});
});
// 注意: 回调方法的注册在整个小程序启动阶段只要做一次,调多次会有多次回调
my.onSocketOpen(() => {
my.alert({ content: '连接已打开!' });
this.setData({
sendMessageAbility: true,
closeLinkAbility: true,
});
});
my.onSocketError((res) => {
my.alert({ content: 'WebSocket 连接打开失败,请检查!' + res });
});
// 注意: 回调方法的注册在整个小程序启动阶段只要做一次,调多次会有多次回调
my.onSocketMessage((res) => {
my.alert({ content: '收到数据!' + JSON.stringify(res) });
});
},
connect_start() {
my.connectSocket({
url: '服务器地址', // 开发者服务器接口地址,必须是 wss 协议,且域名必须是后台配置的合法域名
success: (res) => {
my.showToast({
content: 'success', // 文字内容
});
},
fail: () => {
my.showToast({
content: 'fail', // 文字内容
});
}
});
}
});
})();
(() => {
// https://docs.alipay.com/mini/api/can-i-use
my.canIUse('getFileInfo');
my.canIUse('closeSocket.object.code');
my.canIUse('getLocation.object.type');
my.canIUse('getSystemInfo.return.brand');
my.canIUse('lifestyle');
my.canIUse('button.open-type.share');
})();
(() => {
// https://docs.alipay.com/mini/api/sdk-version
console.log(my.SDKVersion);
})();
(() => {
// https://docs.alipay.com/mini/api/system-info
Page({
data: {
systemInfo: {}
},
getSystemInfoPage(this: my.Page) {
my.getSystemInfo({
success: (res) => {
this.setData({
systemInfo: res
});
}
});
},
});
Page({
data: {
systemInfo: {}
},
getSystemInfoSyncPage(this: my.Page) {
this.setData({
systemInfo: my.getSystemInfoSync()
});
}
});
})();
(() => {
// https://docs.alipay.com/mini/api/network-status
Page({
data: {
hasNetworkType: false
},
getNetworkType(this: my.Page) {
my.getNetworkType({
success: (res) => {
this.setData({
hasNetworkType: true,
networkType: res.networkType
});
}
});
},
clear(this: my.Page) {
this.setData({
hasNetworkType: false,
networkType: ''
});
},
});
my.onNetworkStatusChange((res) => {
console.log(JSON.stringify(res));
});
my.offNetworkStatusChange();
})();
(() => {
// https://docs.alipay.com/mini/api/clipboard
Page({
data: {
text: '3.1415926',
copy: '',
},
handlePaste(this: my.Page) {
my.getClipboard({
success: ({ text }) => {
this.setData({ copy: text });
},
});
},
});
Page({
data: {
text: '3.1415926',
copy: '',
},
handleCopy() {
my.setClipboard({
text: this.data.text,
});
},
});
})();
(() => {
// https://docs.alipay.com/mini/api/shake
Page({
watchShake() {
my.watchShake({
success() {
console.log('动起来了');
my.alert({ title: '动起来了 o.o' });
}
});
},
});
})();
(() => {
// https://docs.alipay.com/mini/api/vibrate
Page({
vibrate() {
my.vibrate({
success: () => {
my.alert({ title: '震动起来了' });
}
});
},
});
Page({
vibrateLong() {
my.vibrateLong({
success: () => {
my.alert({ title: '震动起来了' });
}
});
},
});
Page({
vibrateShort() {
my.vibrateShort({
success: () => {
my.alert({ title: '震动起来了' });
}
});
},
});
})();
(() => {
// https://docs.alipay.com/mini/api/macke-call
Page({
makePhoneCall() {
my.makePhoneCall({ number: '95888' });
},
});
})();
(() => {
// https://docs.alipay.com/mini/api/get-server-time
// getServerTime(){
// my.getServerTime({
// success: (res) => {
// my.alert({
// title: res.time,
// });
// },
// });
// };
})();
(() => {
// https://docs.alipay.com/mini/api/user-capture-screen
my.onUserCaptureScreen(() => {
my.alert({
content: '收到用户截屏事件'
});
});
my.offUserCaptureScreen();
})();
(() => {
// https://docs.alipay.com/mini/api/screen-brightness
my.setKeepScreenOn({
keepScreenOn: true,
success: (res) => {
},
fail: (res) => {
},
});
my.getScreenBrightness({
success: (res) => {
console.log(JSON.stringify(res));
},
fail: (res) => {
},
});
my.setScreenBrightness({
brightness: 0.5,
success: (res) => {
console.log(JSON.stringify(res));
},
fail: (res) => {
},
});
})();
(() => {
// https://docs.alipay.com/mini/api/show-auth-guide
my.showAuthGuide({
authType: 'LBSSERVICE'
});
})();
(() => {
// https://docs.alipay.com/mini/api/scan
Page({
scan() {
my.scan({
type: 'qr',
success: (res) => {
my.alert({ title: res.code });
},
});
}
});
})();
(() => {
// https://docs.alipay.com/mini/api/bluetooth-intro
// 初始化
my.openBluetoothAdapter({
success: (res) => {
console.log(res);
}
});
// 注册发现事件
my.onBluetoothDeviceFound({
success: (res) => {
const device = res.devices[0];
// 连接发现的设备
my.connectBLEDevice({
deviceId,
success: (res) => {
console.log(res);
},
fail: (res) => {
},
complete: (res) => {
}
});
// 停止搜索
my.stopBluetoothDevicesDiscovery({
success: (res) => {
console.log(res);
},
fail: (res) => {
},
complete: (res) => {
}
});
}
});
const deviceId = 'test';
const serviceId = 'test';
const characteristicId = 'test';
// 注册连接事件
my.onBLEConnectionStateChanged({
success: (res) => {
console.log(res);
if (res.connected) {
// 开始读写notify等操作
my.notifyBLECharacteristicValueChange({
deviceId,
serviceId,
characteristicId,
success: (res) => {
console.log(res);
},
fail: (res) => {
},
complete: (res) => {
}
});
}
}
});
// 注册接收read或notify的数据
my.onBLECharacteristicValueChange({
success: (res) => {
console.log(res);
}
});
// 开始搜索
my.startBluetoothDevicesDiscovery({
services: ['fff0'],
success: (res) => {
console.log(res);
},
fail: (res) => {
},
complete: (res) => {
}
});
// 断开连接
my.disconnectBLEDevice({
deviceId,
success: (res) => {
console.log(res);
},
fail: (res) => {
},
complete: (res) => {
}
});
// 注销事件
my.offBluetoothDeviceFound();
my.offBLEConnectionStateChanged();
my.offBLECharacteristicValueChange();
// 退出蓝牙模块
my.closeBluetoothAdapter({
success: (res) => {
},
fail: (res) => {
},
complete: (res) => {
}
});
})();
(() => {
// https://docs.alipay.com/mini/api/bluetooth-api
my.openBluetoothAdapter({
success: (res) => {
},
fail: (res) => {
},
complete: (res) => {
}
});
my.closeBluetoothAdapter({
success: (res) => {
},
fail: (res) => {
},
complete: (res) => {
}
});
my.getBluetoothAdapterState({
success: (res) => {
console.log(res);
},
fail: (res) => {
},
complete: (res) => {
}
});
my.startBluetoothDevicesDiscovery({
services: ['fff0'],
success: (res) => {
console.log(res);
},
fail: (res) => {
},
complete: (res) => {
}
});
my.stopBluetoothDevicesDiscovery({
success: (res) => {
console.log(res);
},
fail: (res) => {
},
complete: (res) => {
}
});
my.getBluetoothDevices({
success: (res) => {
console.log(res);
},
fail: (res) => {
},
complete: (res) => {
}
});
my.getConnectedBluetoothDevices({
success: (res) => {
console.log(res);
},
fail: (res) => {
},
complete: (res) => {
}
});
const deviceId = 'test';
const serviceId = 'test';
const characteristicId = 'test';
my.connectBLEDevice({
// 这里的 deviceId 需要在上面的 getBluetoothDevices 或 onBluetoothDeviceFound 接口中获取
deviceId,
success: (res) => {
console.log(res);
},
fail: (res) => {
},
complete: (res) => {
}
});
my.disconnectBLEDevice({
deviceId,
success: (res) => {
console.log(res);
},
fail: (res) => {
},
complete: (res) => {
}
});
my.writeBLECharacteristicValue({
deviceId,
serviceId,
characteristicId,
value: 'fffe',
success: (res) => {
console.log(res);
},
fail: (res) => {
},
complete: (res) => {
}
});
my.readBLECharacteristicValue({
deviceId,
serviceId,
characteristicId,
success: (res) => {
console.log(res);
},
fail: (res) => {
},
complete: (res) => {
}
});
my.notifyBLECharacteristicValueChange({
deviceId,
serviceId,
characteristicId,
success: (res) => {
console.log(res);
},
fail: (res) => {
},
complete: (res) => {
}
});
my.getBLEDeviceServices({
deviceId,
success: (res) => {
console.log(res);
},
fail: (res) => {
},
complete: (res) => {
}
});
my.getBLEDeviceCharacteristics({
deviceId,
serviceId,
success: (res) => {
console.log(res);
},
fail: (res) => {
},
complete: (res) => {
}
});
Page({
onLoad() {
this.callback = this.callback.bind(this);
my.onBluetoothDeviceFound(this.callback);
},
onUnload() {
my.offBluetoothDeviceFound(this.callback);
},
callback(res: any) {
console.log(res);
},
});
my.offBluetoothDeviceFound();
Page({
onLoad() {
this.callback = this.callback.bind(this);
my.onBLECharacteristicValueChange(this.callback);
},
onUnload() {
my.offBLECharacteristicValueChange(this.callback);
},
callback(res: any) {
console.log(res);
},
});
my.offBLECharacteristicValueChange();
my.offBLEConnectionStateChanged();
my.offBluetoothAdapterStateChange();
})();
(() => {
// https://docs.alipay.com/mini/api/yqleyc
my.startBeaconDiscovery({
uuids: ['uuid1', 'uuid2'],
success: (res) => {
console.log(res);
},
fail: () => {
},
complete: () => {
}
});
my.stopBeaconDiscovery({
success: (res) => {
console.log(res);
},
fail: (res) => {
},
complete: (res) => {
}
});
my.getBeacons({
success: (res) => {
console.log(res);
},
fail: (res) => {
},
complete: (res) => {
}
});
my.onBeaconUpdate({
success: (res) => {
},
});
my.onBeaconServiceChange({
success: (res) => {
},
});
})();
(() => {
// https://docs.alipay.com/mini/api/data-safe
Page({
data: {
inputValue: '',
outputValue: '',
},
onInput(this: my.Page, e: any) {
this.setData({ inputValue: e.detail.value });
},
onEncrypt(this: my.Page) {
my.rsa({
action: 'encrypt',
// 设置公钥
// tslint:disable-next-line:max-line-length
key: 'MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDKmi0dUSVQ04hL6GZGPMFK8+d6\nGzulagP27qSUBYxIJfE04KT+OHVeFFb6K+8nWDea5mkmZrIgp022zZVDgdWPNM62\n3ouBwHlsfm2ekey8PpQxfXaj8lhM9t8rJlC4FEc0s8Qp7Q5/uYrowQbT9m6t7BFK\n3egOO2xOKzLpYSqfbQIDAQAB',
text: this.data.inputValue,
success: (result) => {
this.setData({ outputValue: result.text });
},
fail(e) {
my.alert({
content: e.errorMessage || e.error,
});
},
});
},
onDecrypt(this: my.Page) {
my.rsa({
action: 'decrypt',
text: this.data.inputValue,
// 设置私钥
// tslint:disable-next-line:prefer-template
key: 'MIICdwIBADANBgkqhkiG9w0BAQEFAASCAmEwggJdAgEAAoGBAMqaLR1RJVDTiEvo\n' +
'ZkY8wUrz53obO6VqA/bupJQFjEgl8TTgpP44dV4UVvor7ydYN5rmaSZmsiCnTbbN\n' +
'lUOB1Y80zrbei4HAeWx+bZ6R7Lw+lDF9dqPyWEz23ysmULgURzSzxCntDn+5iujB\n' +
'BtP2bq3sEUrd6A47bE4rMulhKp9tAgMBAAECgYBjsfRLPdfn6v9hou1Y2KKg+F5K\n' +
'ZsY2AnIK+6l+sTAzfIAx7e0ir7OJZObb2eyn5rAOCB1r6RL0IH+MWaN+gZANNG9g\n' +
'pXvRgcZzFY0oqdMZDuSJjpMTj7OEUlPyoGncBfvjAg0zdt9QGAG1at9Jr3i0Xr4X\n' +
'6WrFhtfVlmQUY1VsoQJBAPK2Qj/ClkZNtrSDfoD0j083LcNICqFIIGkNQ+XeuTwl\n' +
'+Gq4USTyaTOEe68MHluiciQ+QKvRAUd4E1zeZRZ02ikCQQDVscINBPTtTJt1JfAo\n' +
'wRfTzA0Lvgig136xLLeQXREcgq1lzgkf+tGyUGYoy9BXsV0mOuYAT9ldja4jhJeq\n' +
'cEulAkEAuSJ5KjV9dyb0RIFAz5C8d8o5KAodwaRIxJkPv5nCZbT45j6t9qbJxDg8\n' +
'N+vghDlHI4owvl5wwVlAO8iQBy8e8QJBAJe9CVXFV0XJR/n/XnER66FxGzJjVi0f\n' +
'185nOlFARI5CHG5VxxT2PUCo5mHBl8ctIj+rQvalvGs515VQ6YEVDCECQE3S0AU2\n' +
'BKyFVNtTpPiTyRUWqig4EbSXwjXdr8iBBJDLsMpdWsq7DCwv/ToBoLg+cQ4Crc5/\n5DChU8P30EjOiEo=',
success: (result) => {
this.setData({ outputValue: result.text });
},
fail(e) {
my.alert({
content: e.errorMessage || e.error,
});
},
});
},
});
})();
(() => {
// https://docs.alipay.com/mini/api/share_app
Page({
onShareAppMessage() {
return {
title: '小程序示例',
desc: '小程序官方示例Demo展示已支持的接口能力及组件。',
path: 'page/component/component-pages/view/view?param=123'
};
},
});
my.hideShareMenu();
})();
(() => {
// https://docs.alipay.com/mini/api/report
my.reportAnalytics('purchase', {
status: 200,
reason: 'ok'
});
})();