scanCode.js
2.7 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
// middlePage/scanCode/scanCode.js
// 小程序扫码中间页
Page({
data: {},
onLoad(options) {
// latitude=34.80829&longitude=118.05272&openId=ozn1a5I4Ie_Bv3gITzMPgcowEFOU&q=HTTP://AAX6.CN/JY/DT5I+67$R$:I$70-SJ2J&bgImage=https%3A%2F%2Fucode-cdn.aax6.cn%2Ffront-end%2Fproject%2Fjunyao%2Fminiprogram%2Fbg.png&contentImage=https%3A%2F%2Fucode-cdn.aax6.cn%2Ffront-end%2Fproject%2Fjunyao%2Fminiprogram%2Ftip_scancode.png&btnAgree=https%3A%2F%2Fucode-cdn.aax6.cn%2Ffront-end%2Fproject%2Fjunyao%2Fminiprogram%2Fbtn_scan.png&path=https%3A%2F%2Fucode-test-cdn.aax6.cn%2Ffront-end%2Fproject%2Fjunyao%2FjunyaoH5%2Findex.html%23%2Fhome&title=%E5%91%B3%E5%8A%A8%E5%8A%9B
// let opt = {
// latitude: '34.80829',
// longitude: '118.05272',
// openId: 'ozn1a5I4Ie_Bv3gITzMPgcowEFOU',
// q: 'HTTP://AAX6.CN/JY/DT5I+67$R$:I$70-SJ2J',
// bgImage: 'https%3A%2F%2Fucode-cdn.aax6.cn%2Ffront-end%2Fproject%2Fjunyao%2Fminiprogram%2Fbg.png',
// contentImage: 'https%3A%2F%2Fucode-cdn.aax6.cn%2Ffront-end%2Fproject%2Fjunyao%2Fminiprogram%2Ftip_scancode.png',
// btnAgree: 'https%3A%2F%2Fucode-cdn.aax6.cn%2Ffront-end%2Fproject%2Fjunyao%2Fminiprogram%2Fbtn_scan.png',
// path: 'https%3A%2F%2Fucode-test-cdn.aax6.cn%2Ffront-end%2Fproject%2Fjunyao%2FjunyaoH5%2Findex.html%23%2Fhome',
// title: '%E5%91%B3%E5%8A%A8%E5%8A%9B',
// };
// options = opt;
let decodeOptions = {};
Object.keys(options).map((item) => {
decodeOptions[item] = decodeURIComponent(options[item]);
});
const { bgImage, contentImage, btnAgree, path, title, q, ...others } = decodeOptions;
this.setData({ bgImage, contentImage, btnAgree, path, title });
this.options = others; // 逻辑参数
// 设置页面title
wx.setNavigationBarTitle({
title,
success: (result) => {},
fail: () => {},
complete: () => {},
});
},
onShow() {},
async getLoginCode() {
return new Promise((resolve, reject) => {
wx.login({
success: (result) => {
console.log(result, '---result');
resolve(result.code);
},
fail: () => {
reject(false);
},
complete: () => {},
});
});
},
// 打开扫码
scanCode() {
wx.scanCode({
success: async (res) => {
const code = await this.getLoginCode();
let query = `code=${code}&q=${res.result}&scanCode=true`;
if (this.options) {
Object.keys(this.options).map((v) => {
if (!query.includes(`${v}=`)) query += `&${v}=${this.options[v]}`;
});
}
const webUrl = `${this.data.path}?${query}`;
console.error('webUrl', webUrl);
this.setData({ webUrl });
},
});
},
onShareAppMessage() {},
});