Skip to content
项目
群组
代码片段
帮助
当前项目
正在载入...
登录 / 注册
切换导航面板
H
H5Public
项目
项目
详情
活动
周期分析
仓库
仓库
文件
提交
分支
标签
贡献者
图表
比较
统计图
议题
0
议题
0
列表
看板
标记
里程碑
CI / CD
CI / CD
流水线
作业
日程
统计图
成员
成员
折叠边栏
关闭边栏
活动
图像
聊天
创建新问题
作业
提交
问题看板
Open sidebar
前端开发小组
H5Public
Commits
99086111
提交
99086111
authored
9月 21, 2019
作者:
钟是志
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
组件错误
上级
8fa645e9
隐藏空白字符变更
内嵌
并排
正在显示
2 个修改的文件
包含
15 行增加
和
41 行删除
+15
-41
Demo.js
utils/handleLocation/Demo.js
+0
-0
index.js
utils/handleLocation/index.js
+15
-41
没有找到文件。
utils/handleLocation/
d
emo.js
→
utils/handleLocation/
D
emo.js
浏览文件 @
99086111
File moved
utils/handleLocation/index.js
浏览文件 @
99086111
...
...
@@ -10,9 +10,10 @@ export default function getLocation(callBack = () => {}){
const
point
=
new
BMap
.
Point
(
107.303748
,
34.346725
);
map
.
centerAndZoom
(
point
,
11
);
const
geolocation
=
new
BMap
.
Geolocation
();
geolocation
.
enableSDKLocation
();
geolocation
.
getCurrentPosition
(
function
(
r
){
if
(
this
.
getStatus
()
===
0
)
{
let
address
=
getAddress
(
r
.
point
);
let
address
=
getAddress
(
r
.
point
,
callBack
);
let
mk
=
new
BMap
.
Marker
(
r
.
point
);
map
.
addOverlay
(
mk
);
map
.
panTo
(
r
.
point
);
...
...
@@ -24,45 +25,18 @@ export default function getLocation(callBack = () => {}){
}
},{
enableHighAccuracy
:
true
});
// 通过坐标 拿取地址名字
function
getAddress
(
point
)
{
const
lng
=
point
.
lng
;
// 经度
const
lat
=
point
.
lat
;
// 纬度
let
gc
=
new
BMap
.
Geocoder
();
gc
.
getLocation
(
point
,
function
(
res
){
let
formValues
=
{};
let
status
=
0
;
// 判断范围
const
zoneCaculate
=
(
origin
,
r
)
=>
{
let
currR
=
Math
.
sqrt
(
Math
.
pow
(
origin
.
lng
-
lng
,
2
)
+
Math
.
pow
(
origin
.
lat
-
lat
,
2
))
if
(
currR
<=
r
)
{
return
1
;
}
else
{
return
0
}
};
// 判断时间
const
caculateTime
=
(
startTime
,
endTime
)
=>
{
let
currTime
=
new
Date
().
getTime
();
if
(
startTime
<
currTime
&&
currTime
<
endTime
)
{
return
1
;
}
else
{
return
0
;
}
};
}
// 处理状态
const
isZone
=
zoneCaculate
({
lng
:
104
,
lat
:
30
},
1000
);
const
isTime
=
caculateTime
(
new
Date
().
getTime
()
-
10000
,
new
Date
().
getTime
()
+
10000
);
if
(
isZone
===
0
)
status
=
0
;
if
(
isZone
===
1
&&
isTime
===
1
)
status
=
2
;
if
(
isZone
===
1
&&
isTime
===
0
)
status
=
1
;
// 更改状态
formValues
.
address
=
res
.
address
;
formValues
.
lng
=
lng
;
formValues
.
lat
=
lat
;
callBack
(
formValues
);
});
}
export
function
getAddress
(
point
,
callBack
=
()
=>
{}){
const
lng
=
point
.
lng
;
// 经度
const
lat
=
point
.
lat
;
// 纬度
let
gc
=
new
BMap
.
Geocoder
();
gc
.
getLocation
(
point
,
function
(
res
){
let
formValues
=
{};
// 更改状态
formValues
.
address
=
res
.
address
;
formValues
.
lng
=
lng
;
formValues
.
lat
=
lat
;
callBack
(
formValues
);
});
}
编写
预览
Markdown
格式
0%
重试
或
添加新文件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
请先完成此评论的编辑!
取消
请
注册
或者
登录
后发表评论