提交 2117a8ed 编写于 作者: zhaofengliang920817's avatar zhaofengliang920817

调整定位和支付示例|适配新增方法 uni.getProviderSync。

上级 8d6619e2
...@@ -84,13 +84,13 @@ ...@@ -84,13 +84,13 @@
jest_provider: '', jest_provider: '',
jest_type: 'wgs84' as GetLocationType, jest_type: 'wgs84' as GetLocationType,
jest_isAltitude: false, jest_isAltitude: false,
jest_isGeocode: false, jest_isGeocode: false,
jest_isHighAccuracy: false, jest_isHighAccuracy: false,
jest_altitude: -1000, jest_altitude: -1000,
jest_longitude: 200, jest_longitude: 200,
jest_latitude: 100, jest_latitude: 100,
jest_address: '', jest_address: '',
jest_errCode: 0, jest_errCode: 0,
jest_complete: false jest_complete: false
} }
}, },
...@@ -102,31 +102,18 @@ ...@@ -102,31 +102,18 @@
methods: { methods: {
getProvider() { getProvider() {
// #ifdef APP // #ifdef APP
uni.getProvider({
service: "location",
success: (e) => {
console.log("location success:" + JSON.stringify(e), e.providerObjects.length);
let array = e.providerIds as string[]
array.forEach((value : string) => {
let locationProvider = e.providerObjects.find((item) : boolean => {
return item.id == value
})
if (locationProvider != null) {
this.providerList.push({
name: locationProvider.description,
id: locationProvider.id,
provider: e.providerObjects.find((item) : boolean => {
return item.id == locationProvider.id
})
} as LocationItem);
}
})
},
fail: (e) => {
console.log("获取定位服务商失败:", e);
}
});
let provider = uni.getProviderSync({
service: "location",
} as GetProviderSyncOptions)
console.log(provider)
provider.providerObjects.forEach((value : UniProvider) => {
this.providerList.push({
name: value.description,
id: value.id,
provider: value
} as LocationItem);
})
this.providerList.forEach((value, index) => { this.providerList.forEach((value, index) => {
if (value.id == "system") { if (value.id == "system") {
...@@ -203,8 +190,8 @@ ...@@ -203,8 +190,8 @@
}, },
// 仅用于自动化测试 // 仅用于自动化测试
jestGetLocation() { jestGetLocation() {
this.jest_complete = false this.jest_complete = false
this.jest_errCode = 0 this.jest_errCode = 0
uni.getLocation(({ uni.getLocation(({
// #ifdef APP // #ifdef APP
...@@ -214,17 +201,17 @@ ...@@ -214,17 +201,17 @@
altitude: this.jest_isAltitude, altitude: this.jest_isAltitude,
isHighAccuracy: this.jest_isHighAccuracy, isHighAccuracy: this.jest_isHighAccuracy,
geocode: this.jest_isGeocode, geocode: this.jest_isGeocode,
success: (res) => { success: (res) => {
if (res.address != null) { if (res.address != null) {
this.jest_address = res.address! this.jest_address = res.address!
} }
this.jest_longitude = res.longitude this.jest_longitude = res.longitude
this.jest_latitude = res.latitude this.jest_latitude = res.latitude
this.jest_altitude = res.altitude this.jest_altitude = res.altitude
this.jest_complete = true this.jest_complete = true
}, },
fail: (err) => { fail: (err) => {
this.jest_errCode = err.errCode this.jest_errCode = err.errCode
this.jest_complete = true this.jest_complete = true
} }
})); }));
......
...@@ -22,7 +22,7 @@ ...@@ -22,7 +22,7 @@
</view> </view>
</view> </view>
<button class="btn-get-provider" type="primary" @click="getProvider">getProvider</button> <button class="btn-get-provider" type="primary" @click="getProvider">getProviderSync</button>
</view> </view>
<!-- #ifdef APP --> <!-- #ifdef APP -->
</scroll-view> </scroll-view>
......
...@@ -22,40 +22,30 @@ ...@@ -22,40 +22,30 @@
} }
}, },
onLoad: function () { onLoad: function () {
uni.getProvider({ let provider = uni.getProviderSync({
service: "payment", service: "payment",
success: (e) => { } as GetProviderSyncOptions)
console.log("payment success:" + JSON.stringify(e)); console.log(provider)
let array = e.providerIds as string[] provider.providerObjects.forEach((value : UniProvider) => {
array.forEach((value : string) => { switch (value.id) {
switch (value) { case 'alipay':
case 'alipay': this.providerList.push({
this.providerList.push({ name: '支付宝',
name: '支付宝', id: "alipay",
id: "alipay", provider: value
provider: e.providerObjects.find((item) : boolean => { } as PayItem);
return item.id == 'alipay' break;
}) case 'wxpay':
} as PayItem); this.providerList.push({
break; name: '微信',
case 'wxpay': id: "wxpay",
this.providerList.push({ provider: value
name: '微信', } as PayItem);
id: "wxpay", break;
provider: e.providerObjects.find((item) : boolean => { default:
return item.id == 'wxpay' break;
})
} as PayItem);
break;
default:
break;
}
})
},
fail: (e) => {
console.log("获取支付通道失败:", e);
} }
}); })
}, },
methods: { methods: {
requestPayment(e : PayItem) { requestPayment(e : PayItem) {
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册