From 4fe43d51c3f7a3923986b23ccf5c27ab83e6e5e5 Mon Sep 17 00:00:00 2001 From: yangyin <1850366751@qq.com> Date: 星期五, 08 十一月 2024 16:34:18 +0800 Subject: [PATCH] 修改新建聊天室为新建对话 --- src/model/map/GaoDeMap.ts | 30 ++++++++++++++++++++++++------ 1 files changed, 24 insertions(+), 6 deletions(-) diff --git a/src/model/map/GaoDeMap.ts b/src/model/map/GaoDeMap.ts index 47ee26b..695b6c7 100644 --- a/src/model/map/GaoDeMap.ts +++ b/src/model/map/GaoDeMap.ts @@ -7,7 +7,7 @@ version?: string; plugins?: string[]; container: string | HTMLDivElement; - aMapOption?: Partial<AMap.MapOptions>; + aMapOption?: Partial<AMap.MapOptions> & Record<string, any>; }; export type GaoDeMarkerOption = { @@ -15,6 +15,7 @@ url: string; size: number; }; + click?: (e: any, labelMarker: AMap.LabelMarker) => void; }; export type LabelMarkerData = { position: GaoDePosition; @@ -59,11 +60,22 @@ plugins: gaoDeOption.plugins, }); this.map = new AMap.Map(gaoDeOption.container, gaoDeOption.aMapOption); + this.setStyle(); } catch (error) { // console.error(error); } } constructor() {} + + private setStyle() { + const container = this.map.getContainer() as any; + /** + * 闅愯棌楂樺痉鐩稿叧鏍囧織 + */ + container.querySelector('.amap-logo').style.opacity = 0; + container.querySelector('.amap-copyright').style.opacity = 0; + + } zoomToRect(southWest: GaoDePosition, northEast: GaoDePosition) { if (!this.viewBound) { @@ -92,10 +104,9 @@ } as MarkerLayerOption) as MarkerLayerOption; const layer = new AMap.LabelsLayer(markerLayerOption.layerOpt); - let convertData = (dataList ?? []).map<AMap.LabelMarkerOptions>((item) => { - const { - markerOpt: { icon }, - } = markerLayerOption; + const { markerOpt } = markerLayerOption; + const convertData = (dataList ?? []).map<AMap.LabelMarkerOptions>((item) => { + const { icon } = markerOpt; return { // name: '鑷彁鐐�9', position: item.position, @@ -128,7 +139,14 @@ extData: item.extData, }; }); - const markerList = convertData.map((item) => new AMap.LabelMarker(item)); + const markerList = convertData.map((item) => { + const label = new AMap.LabelMarker(item); + if (markerOpt.click) { + label.on('click', (e) => markerOpt.click(e, label)); + } + return label; + }); + layer.add(markerList); this.map.add(layer); } -- Gitblit v1.9.3