使用uni-app做小程序的坑
校验https这个坑是真的让我很难受的,在小程序的开发者工具里面,是不自动检验的,一定一定要把这个√给去掉,因为测试版本确实不检验https但是正式版本的都需要检验,所以一定要用https定位使用uni-app定位时需要引入小程序的js(qqmap-wx-jssdk.js)我用的是腾讯的api文档使用小程序自带的uni.getLocatio定位到的城市是拼音的,我们需要的是中文的,就需要转...
·
校验https
这个坑是真的让我很难受的,在小程序的开发者工具里面,是不自动检验的,一定一定要把这个√给去掉,因为测试版本确实不检验https但是正式版本的都需要检验,所以一定要用https
定位
使用uni-app定位时需要引入小程序的js(qqmap-wx-jssdk.js)我用的是腾讯的api文档
使用小程序自带的uni.getLocatio定位到的城市是拼音的,我们需要的是中文的,就需要转换一下
key就是你去腾讯地图平台里申请的key,这里就可以将经纬度转换成对应的城市信息
有具体的地址得到经纬度
var QQMapWX = require('../../common/qqmap-wx-jssdk.js');
var qqmapsdk;
onLoad(option) {
qqmapsdk = new QQMapWX({
key: 'AHTBZ-X6GKW-RPSRU-RDO42-ZY2OV-3MFOT'
});
},
method:{
getLoaction(){
qqmapsdk.geocoder({
address: '浙江省杭州市滨江区网易公司',
success: function(res) {
var res = res.result
var latitude = res.location.lat;
var longitude = res.location.lng;
that.obj.latitude = latitude
that.obj.longitude = longitude
if(that.isEmpty(latitude)){
that.toast('请正确填写地址')
return;
}
}
});
}
}
深拷贝
我们平常用的深拷贝大多都是JSON.parse(JSON.stringify())但是我因为解决的这个是个对象的深拷贝,对象里面还有一层对象,就这种是解决不了了,只能使用递归的深拷贝方法
copy(obj){
var newobj = obj.constructor === Array ? [] : {};
if(typeof obj !== 'object'){
return;
}
for(var i in obj){
newobj[i] = typeof obj[i] === 'object' ? this.copy(obj[i]) : obj[i];
}
return newobj
},
这个方法就完美解决了
更多推荐
已为社区贡献2条内容
所有评论(0)