Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
qianlong66
uni-app
提交
7d39fd63
U
uni-app
项目概览
qianlong66
/
uni-app
与 Fork 源项目一致
Fork自
DCloud / uni-app
通知
1
Star
1
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
U
uni-app
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
7d39fd63
编写于
9月 04, 2022
作者:
DCloud-WZF
💬
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
refactor(h5 map control): 统一添加方式及优化添加逻辑
上级
2167bfbb
变更
1
隐藏空白更改
内联
并排
Showing
1 changed file
with
10 addition
and
18 deletion
+10
-18
packages/uni-h5/src/view/components/map/MapControl.tsx
packages/uni-h5/src/view/components/map/MapControl.tsx
+10
-18
未找到文件。
packages/uni-h5/src/view/components/map/MapControl.tsx
浏览文件 @
7d39fd63
import
{
inject
,
onUnmounted
,
watch
,
PropType
}
from
'
vue
'
import
{
inject
,
onUnmounted
,
watch
,
PropType
}
from
'
vue
'
import
{
getRealPath
}
from
'
@dcloudio/uni-platform
'
import
{
getRealPath
}
from
'
@dcloudio/uni-platform
'
import
{
defineSystemComponent
,
useCustomEvent
}
from
'
@dcloudio/uni-components
'
import
{
defineSystemComponent
,
useCustomEvent
}
from
'
@dcloudio/uni-components
'
import
{
Maps
,
Map
,
QQMap
,
GoogleMap
}
from
'
./maps
'
import
{
Maps
,
Map
}
from
'
./maps
'
import
{
getIsAMap
}
from
'
../../../helpers/location
'
import
{
QQMaps
}
from
'
./maps/qq/types
'
import
{
GoogleMaps
}
from
'
./maps/google/types
'
interface
Position
{
interface
Position
{
left
:
number
|
string
left
:
number
|
string
...
@@ -41,27 +38,27 @@ export default /*#__PURE__*/ defineSystemComponent({
...
@@ -41,27 +38,27 @@ export default /*#__PURE__*/ defineSystemComponent({
control
.
remove
()
control
.
remove
()
}
}
}
}
onMapReady
((
map
,
maps
,
trigger
)
=>
{
onMapReady
((
_
,
__
,
trigger
)
=>
{
function
updateControl
(
option
:
Props
)
{
function
updateControl
(
option
:
Props
)
{
removeControl
()
removeControl
()
addControl
(
option
)
addControl
(
option
)
}
}
function
addControl
(
option
:
Props
)
{
function
addControl
(
option
:
Props
)
{
const
position
=
option
.
position
||
{}
control
=
document
.
createElement
(
'
div
'
)
control
=
document
.
createElement
(
'
div
'
)
const
img
=
new
Image
()
control
.
appendChild
(
img
)
const
style
=
control
.
style
const
style
=
control
.
style
style
.
position
=
'
absolute
'
style
.
position
=
'
absolute
'
style
.
width
=
'
0
'
style
.
width
=
'
0
'
style
.
height
=
'
0
'
style
.
height
=
'
0
'
style
.
top
=
'
0
'
style
.
top
=
'
0
'
style
.
left
=
'
0
'
style
.
left
=
'
0
'
const
img
=
new
Image
()
img
.
src
=
getRealPath
(
option
.
iconPath
)
img
.
onload
=
()
=>
{
img
.
onload
=
()
=>
{
if
(
option
.
position
.
width
)
{
const
position
=
option
.
position
||
{}
if
(
position
.
width
)
{
img
.
width
=
option
.
position
.
width
img
.
width
=
option
.
position
.
width
}
}
if
(
option
.
position
.
height
)
{
if
(
position
.
height
)
{
img
.
height
=
option
.
position
.
height
img
.
height
=
option
.
position
.
height
}
}
const
style
=
img
.
style
const
style
=
img
.
style
...
@@ -69,8 +66,10 @@ export default /*#__PURE__*/ defineSystemComponent({
...
@@ -69,8 +66,10 @@ export default /*#__PURE__*/ defineSystemComponent({
style
.
left
=
(
position
.
left
||
0
)
+
'
px
'
style
.
left
=
(
position
.
left
||
0
)
+
'
px
'
style
.
top
=
(
position
.
top
||
0
)
+
'
px
'
style
.
top
=
(
position
.
top
||
0
)
+
'
px
'
style
.
maxWidth
=
'
initial
'
style
.
maxWidth
=
'
initial
'
control
.
appendChild
(
img
)
props
.
rootRef
.
value
&&
props
.
rootRef
.
value
.
appendChild
(
control
)
}
}
img
.
src
=
getRealPath
(
option
.
iconPath
)
img
.
onclick
=
function
(
$event
)
{
img
.
onclick
=
function
(
$event
)
{
if
(
option
.
clickable
)
{
if
(
option
.
clickable
)
{
trigger
(
'
controltap
'
,
$event
,
{
trigger
(
'
controltap
'
,
$event
,
{
...
@@ -78,13 +77,6 @@ export default /*#__PURE__*/ defineSystemComponent({
...
@@ -78,13 +77,6 @@ export default /*#__PURE__*/ defineSystemComponent({
})
})
}
}
}
}
if
(
getIsAMap
())
{
props
.
rootRef
.
value
&&
props
.
rootRef
.
value
.
appendChild
(
control
)
}
else
{
;(
map
as
QQMap
|
GoogleMap
).
controls
[
(
maps
as
QQMaps
|
GoogleMaps
).
ControlPosition
.
TOP_LEFT
].
push
(
control
)
}
}
}
addControl
(
props
as
Props
)
addControl
(
props
as
Props
)
watch
(
props
,
updateControl
)
watch
(
props
,
updateControl
)
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录