@tarojs/components-react 4.1.12-beta.33 → 4.1.12-beta.35

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1 +1 @@
1
- {"version":3,"file":"MapContext.js","sources":["../../../../src/components/map/MapContext.ts"],"sourcesContent":["/* eslint-disable no-console */\nimport { logPrefix } from './common'\nimport { MethodHandler } from './handler'\n\nimport type { MapContext as TaroMapContext } from '@tarojs/taro'\n/**\n * 全局地图实例存储\n * key: Map 组件的 id\n * value: TMap.Map 实例\n */\nconst mapInstances = new Map<string, TMap.Map>()\n\n/**\n * 注册地图实例(同时创建 MapContextImpl 并挂载到 window)\n * @param id Map 组件的 id\n * @param instance 地图实例\n */\nexport function registerMapInstance(id: string, instance: TMap.Map): void {\n mapInstances.set(id, instance)\n console.log(logPrefix, '[MapContext] 注册地图实例:', id, instance)\n\n // ✅ 方案 F:创建 MapContextImpl 并挂载到 window\n if (typeof window !== 'undefined') {\n // 确保 window 对象存在\n if (!(window as any).__TARO_MAP_CONTEXTS__) {\n (window as any).__TARO_MAP_CONTEXTS__ = new Map()\n }\n\n // ✅ 在这里 new MapContextImpl(有 TMap 类型)\n const contextImpl = new MapContextImpl(instance)\n\n // ✅ 存储 MapContextImpl 实例(不是 TMap.Map 实例)\n ;(window as any).__TARO_MAP_CONTEXTS__.set(id, contextImpl)\n\n console.log(logPrefix, '[MapContext] 挂载 MapContextImpl 到 window:', id)\n }\n}\n\n/**\n * 注销地图实例(同时清理 window)\n * @param id Map 组件的 id\n */\nexport function unregisterMapInstance(id: string): void {\n mapInstances.delete(id)\n console.log(logPrefix, '[MapContext] 注销地图实例:', id)\n\n // ✅ 从 window 清理 MapContextImpl\n if (typeof window !== 'undefined') {\n (window as any).__TARO_MAP_CONTEXTS__?.delete(id)\n console.log(logPrefix, '[MapContext] 从 window 清理 MapContextImpl:', id)\n }\n}\n\n/**\n * 获取地图实例\n * @param id Map 组件的 id\n * @returns 地图实例,如果不存在则返回 undefined\n */\nexport function getMapInstance(id: string): TMap.Map | undefined {\n return mapInstances.get(id)\n}\n\n/**\n * MapContext 实现类\n * 将腾讯地图 API 适配到 Taro MapContext 接口\n */\nexport class MapContextImpl implements TaroMapContext {\n private map: TMap.Map | null\n\n constructor(map: TMap.Map | null) {\n this.map = map\n if (!map) {\n console.warn(logPrefix, '[MapContext] 地图实例为空,部分方法将不可用')\n }\n }\n\n /**\n * 缩放视野包含所有经纬度\n * @supported weapp, tt\n */\n includePoints(option: TaroMapContext.IncludePointsOption): Promise<TaroGeneral.CallbackResult> {\n const handle = new MethodHandler({\n name: 'includePoints',\n success: option?.success,\n fail: option?.fail,\n complete: option?.complete,\n })\n\n if (!this.map) {\n return handle.fail({ errMsg: '地图实例不存在' })\n }\n\n try {\n const { points, padding } = option\n console.log(logPrefix, '[MapContext.includePoints] 开始执行:', { points, padding })\n\n // 创建空的 LatLngBounds\n const bounds = new TMap.LatLngBounds()\n // 转换坐标格式: {latitude, longitude} -> TMap.LatLng 并扩展边界\n points.forEach((p) => {\n const latLng = new TMap.LatLng(p.latitude, p.longitude)\n bounds.extend(latLng)\n })\n console.log(logPrefix, '[MapContext.includePoints] LatLngBounds:', bounds, 'padding:', padding)\n\n // 转换 padding 格式: Taro [top, right, bottom, left] -> TMap {top, right, bottom, left}\n let paddingOption: number | { top: number, right: number, bottom: number, left: number } | undefined\n if (padding) {\n if (Array.isArray(padding)) {\n // padding 是数组格式 [top, right, bottom, left]\n paddingOption = {\n top: padding[0],\n right: padding[1],\n bottom: padding[2],\n left: padding[3],\n }\n } else {\n // padding 是数字格式,直接使用\n paddingOption = padding as number\n }\n }\n\n // 调用地图的 fitBounds 方法\n this.map.fitBounds(bounds, {\n padding: paddingOption,\n })\n\n console.log(logPrefix, '[MapContext.includePoints] 执行成功')\n\n return handle.success({})\n } catch (error: any) {\n console.error(logPrefix, '[MapContext.includePoints] 执行失败:', error)\n return handle.fail({ errMsg: error?.message || String(error) })\n }\n }\n\n /**\n * 获取当前地图中心的经纬度\n * @supported weapp, tt\n */\n getCenterLocation(_option?: TaroMapContext.GetCenterLocationOption): Promise<TaroMapContext.GetCenterLocationSuccessCallbackResult> {\n console.warn(logPrefix, '[MapContext.getCenterLocation] 暂未实现')\n return Promise.reject(new Error('getCenterLocation: 暂未实现'))\n }\n\n /**\n * 设置定位点图标\n * @supported weapp, tt\n */\n setLocMarkerIcon(_option: TaroMapContext.SetLocMarkerIconOption): Promise<TaroGeneral.CallbackResult> {\n console.warn(logPrefix, '[MapContext.setLocMarkerIcon] 暂未实现')\n return Promise.reject(new Error('setLocMarkerIcon: 暂未实现'))\n }\n\n /**\n * 将地图中心移置当前定位点\n * @supported weapp, tt\n */\n moveToLocation(_option: TaroMapContext.MoveToLocationOption): Promise<TaroGeneral.CallbackResult> {\n console.warn(logPrefix, '[MapContext.moveToLocation] 暂未实现')\n return Promise.reject(new Error('moveToLocation: 暂未实现'))\n }\n\n /**\n * 平移marker,带动画\n * @supported weapp, tt\n */\n translateMarker(_option: TaroMapContext.TranslateMarkerOption): Promise<TaroGeneral.CallbackResult> {\n console.warn(logPrefix, '[MapContext.translateMarker] 暂未实现')\n return Promise.reject(new Error('translateMarker: 暂未实现'))\n }\n\n /**\n * 沿指定路径移动 marker\n */\n moveAlong(_object: any): void {\n console.warn(logPrefix, '[MapContext.moveAlong] 暂未实现')\n }\n\n /**\n * 获取当前地图的视野范围\n * @supported weapp, tt\n */\n getRegion(option?: TaroMapContext.GetRegionOption): Promise<TaroMapContext.GetRegionSuccessCallbackResult> {\n console.warn(logPrefix, '[MapContext.getRegion] 暂未实现', option)\n return Promise.reject(new Error('getRegion: 暂未实现'))\n }\n\n /**\n * 获取当前地图的旋转角\n * @supported weapp, tt\n */\n getRotate(option?: TaroMapContext.GetRotateOption): Promise<TaroMapContext.GetRotateSuccessCallbackResult> {\n console.warn(logPrefix, '[MapContext.getRotate] 暂未实现', option)\n return Promise.reject(new Error('getRotate: 暂未实现'))\n }\n\n /**\n * 获取当前地图的倾斜角\n * @supported weapp, tt\n */\n getSkew(option?: TaroMapContext.GetSkewOption): Promise<TaroMapContext.GetSkewSuccessCallbackResult> {\n console.warn(logPrefix, '[MapContext.getSkew] 暂未实现', option)\n return Promise.reject(new Error('getSkew: 暂未实现'))\n }\n\n /**\n * 获取当前地图的缩放级别\n * @supported weapp, tt\n */\n getScale(option?: TaroMapContext.GetScaleOption): Promise<TaroMapContext.GetScaleSuccessCallbackResult> {\n console.warn(logPrefix, '[MapContext.getScale] 暂未实现', option)\n return Promise.reject(new Error('getScale: 暂未实现'))\n }\n\n /**\n * 设置地图中心点偏移\n * @supported weapp, tt\n */\n setCenterOffset(option: TaroMapContext.SetCenterOffsetOption): Promise<TaroGeneral.CallbackResult> {\n console.warn(logPrefix, '[MapContext.setCenterOffset] 暂未实现', option)\n return Promise.reject(new Error('setCenterOffset: 暂未实现'))\n }\n\n /**\n * 移除个性化图层\n * @supported weapp\n */\n removeCustomLayer(option: TaroMapContext.RemoveCustomLayerOption): Promise<TaroGeneral.CallbackResult> {\n console.warn(logPrefix, '[MapContext.removeCustomLayer] 暂未实现', option)\n return Promise.reject(new Error('removeCustomLayer: 暂未实现'))\n }\n\n /**\n * 添加个性化图层\n * @supported weapp\n */\n addCustomLayer(option: TaroMapContext.AddCustomLayerOption): Promise<TaroGeneral.CallbackResult> {\n console.warn(logPrefix, '[MapContext.addCustomLayer] 暂未实现', option)\n return Promise.reject(new Error('addCustomLayer: 暂未实现'))\n }\n\n /**\n * 创建自定义图片图层\n * @supported weapp, tt\n */\n addGroundOverlay(option: TaroMapContext.AddGroundLayerOption): Promise<TaroGeneral.CallbackResult> {\n console.warn(logPrefix, '[MapContext.addGroundOverlay] 暂未实现', option)\n return Promise.reject(new Error('addGroundOverlay: 暂未实现'))\n }\n\n /**\n * 添加可视化图层\n * @supported weapp\n */\n addVisualLayer(option: TaroMapContext.AddVisualLayerOption): Promise<TaroGeneral.CallbackResult> {\n console.warn(logPrefix, '[MapContext.addVisualLayer] 暂未实现', option)\n return Promise.reject(new Error('addVisualLayer: 暂未实现'))\n }\n\n /**\n * 移除可视化图层\n * @supported weapp\n */\n removeVisualLayer(option: TaroMapContext.RemoveVisualLayerOption): Promise<TaroGeneral.CallbackResult> {\n console.warn(logPrefix, '[MapContext.removeVisualLayer] 暂未实现', option)\n return Promise.reject(new Error('removeVisualLayer: 暂未实现'))\n }\n\n /**\n * 添加弧线\n * @supported weapp\n */\n addArc(option: TaroMapContext.AddArcOption): Promise<TaroGeneral.CallbackResult> {\n console.warn(logPrefix, '[MapContext.addArc] 暂未实现', option)\n return Promise.reject(new Error('addArc: 暂未实现'))\n }\n\n /**\n * 删除弧线\n * @supported weapp\n */\n removeArc(option: TaroMapContext.RemoveArcOption): Promise<TaroGeneral.CallbackResult> {\n console.warn(logPrefix, '[MapContext.removeArc] 暂未实现', option)\n return Promise.reject(new Error('removeArc: 暂未实现'))\n }\n\n /**\n * 限制地图的显示范围\n * @supported weapp\n */\n setBoundary(option: TaroMapContext.SetBoundaryOption): Promise<TaroGeneral.CallbackResult> {\n console.warn(logPrefix, '[MapContext.setBoundary] 暂未实现', option)\n return Promise.reject(new Error('setBoundary: 暂未实现'))\n }\n\n /**\n * 更新自定义图片图层\n * @supported weapp, tt\n */\n updateGroundOverlay(option: TaroMapContext.UpdateGroundOverlayOption): Promise<TaroGeneral.CallbackResult> {\n console.warn(logPrefix, '[MapContext.updateGroundOverlay] 暂未实现', option)\n return Promise.reject(new Error('updateGroundOverlay: 暂未实现'))\n }\n\n /**\n * 移除自定义图片图层\n * @supported weapp, tt\n */\n removeGroundOverlay(option: TaroMapContext.RemoveGroundOverlayOption): Promise<TaroGeneral.CallbackResult> {\n console.warn(logPrefix, '[MapContext.removeGroundOverlay] 暂未实现', option)\n return Promise.reject(new Error('removeGroundOverlay: 暂未实现'))\n }\n\n /**\n * 获取经纬度对应的屏幕坐标\n * @supported weapp\n */\n toScreenLocation(option: TaroMapContext.ToScreenLocationOption): Promise<TaroGeneral.CallbackResult> {\n console.warn(logPrefix, '[MapContext.toScreenLocation] 暂未实现', option)\n return Promise.reject(new Error('toScreenLocation: 暂未实现'))\n }\n\n /**\n * 获取屏幕上的点对应的经纬度\n * @supported weapp\n */\n fromScreenLocation(option: TaroMapContext.FromScreenLocationOption): Promise<TaroGeneral.CallbackResult> {\n console.warn(logPrefix, '[MapContext.fromScreenLocation] 暂未实现', option)\n return Promise.reject(new Error('fromScreenLocation: 暂未实现'))\n }\n\n /**\n * 拉起地图APP选择导航\n * @supported weapp\n */\n openMapApp(option: TaroMapContext.OpenMapAppOption): Promise<TaroGeneral.CallbackResult> {\n console.warn(logPrefix, '[MapContext.openMapApp] 暂未实现', option)\n return Promise.reject(new Error('openMapApp: 暂未实现'))\n }\n\n /**\n * 添加 marker\n * @supported weapp\n */\n addMarkers(option: TaroMapContext.AddMarkersOption): Promise<TaroGeneral.CallbackResult> {\n console.warn(logPrefix, '[MapContext.addMarkers] 暂未实现', option)\n return Promise.reject(new Error('addMarkers: 暂未实现'))\n }\n\n /**\n * 移除 marker\n * @supported weapp\n */\n removeMarkers(option: TaroMapContext.RemoveMarkersOption): Promise<TaroGeneral.CallbackResult> {\n console.warn(logPrefix, '[MapContext.removeMarkers] 暂未实现', option)\n return Promise.reject(new Error('removeMarkers: 暂未实现'))\n }\n\n /**\n * 初始化点聚合的配置\n * @supported weapp\n */\n initMarkerCluster(option?: TaroMapContext.InitMarkerClusterOption): Promise<TaroGeneral.CallbackResult> {\n console.warn(logPrefix, '[MapContext.initMarkerCluster] 暂未实现', option)\n return Promise.reject(new Error('initMarkerCluster: 暂未实现'))\n }\n\n /**\n * 监听地图事件\n * @supported weapp\n */\n on(\n event: keyof TaroMapContext.MapEvent,\n callback: (res: TaroMapContext.MapEvent[keyof TaroMapContext.MapEvent]) => void\n ): void {\n console.warn(logPrefix, '[MapContext.on] 暂未实现', event, callback)\n }\n}\n\nexport { MapContextImpl as MapContext }\n"],"names":["mapInstances","Map","registerMapInstance","id","instance","set","console","log","logPrefix","window","__TARO_MAP_CONTEXTS__","contextImpl","MapContextImpl","unregisterMapInstance","delete","_a","getMapInstance","get","constructor","map","warn","includePoints","option","handle","MethodHandler","name","success","fail","complete","errMsg","points","padding","bounds","TMap","LatLngBounds","forEach","p","latLng","LatLng","latitude","longitude","extend","paddingOption","Array","isArray","top","right","bottom","left","fitBounds","error","message","String","getCenterLocation","_option","Promise","reject","Error","setLocMarkerIcon","moveToLocation","translateMarker","moveAlong","_object","getRegion","getRotate","getSkew","getScale","setCenterOffset","removeCustomLayer","addCustomLayer","addGroundOverlay","addVisualLayer","removeVisualLayer","addArc","removeArc","setBoundary","updateGroundOverlay","removeGroundOverlay","toScreenLocation","fromScreenLocation","openMapApp","addMarkers","removeMarkers","initMarkerCluster","on","event","callback"],"mappings":"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"}
1
+ {"version":3,"file":"MapContext.js","sources":["../../../../src/components/map/MapContext.ts"],"sourcesContent":["/* eslint-disable no-console */\nimport { logPrefix } from './common'\nimport { MethodHandler } from './handler'\n\nimport type { MapContext as TaroMapContext } from '@tarojs/taro'\n/**\n * 全局地图实例存储\n * key: Map 组件的 id\n * value: TMap.Map 实例\n */\nconst mapInstances = new Map<string, TMap.Map>()\n\n/**\n * 注册地图实例(同时创建 MapContextImpl 并挂载到 window)\n * @param id Map 组件的 id\n * @param instance 地图实例\n */\nexport function registerMapInstance(id: string, instance: TMap.Map): void {\n mapInstances.set(id, instance)\n console.log(logPrefix, '[MapContext] 注册地图实例:', id, instance)\n\n // ✅ 方案 F:创建 MapContextImpl 并挂载到 window\n if (typeof window !== 'undefined') {\n // 确保 window 对象存在\n if (!(window as any).__TARO_MAP_CONTEXTS__) {\n (window as any).__TARO_MAP_CONTEXTS__ = new Map()\n }\n\n // ✅ 在这里 new MapContextImpl(有 TMap 类型)\n const contextImpl = new MapContextImpl(instance)\n\n // ✅ 存储 MapContextImpl 实例(不是 TMap.Map 实例)\n ;(window as any).__TARO_MAP_CONTEXTS__.set(id, contextImpl)\n\n console.log(logPrefix, '[MapContext] 挂载 MapContextImpl 到 window:', id)\n }\n}\n\n/**\n * 注销地图实例(同时清理 window)\n * @param id Map 组件的 id\n */\nexport function unregisterMapInstance(id: string): void {\n mapInstances.delete(id)\n console.log(logPrefix, '[MapContext] 注销地图实例:', id)\n\n // ✅ 从 window 清理 MapContextImpl\n if (typeof window !== 'undefined') {\n (window as any).__TARO_MAP_CONTEXTS__?.delete(id)\n console.log(logPrefix, '[MapContext] 从 window 清理 MapContextImpl:', id)\n }\n}\n\n/**\n * 获取地图实例\n * @param id Map 组件的 id\n * @returns 地图实例,如果不存在则返回 undefined\n */\nexport function getMapInstance(id: string): TMap.Map | undefined {\n return mapInstances.get(id)\n}\n\n/**\n * MapContext 实现类\n * 将腾讯地图 API 适配到 Taro MapContext 接口\n */\nexport class MapContextImpl implements TaroMapContext {\n private map: TMap.Map | null\n\n constructor(map: TMap.Map | null) {\n this.map = map\n if (!map) {\n console.warn(logPrefix, '[MapContext] 地图实例为空,部分方法将不可用')\n }\n }\n\n /**\n * 缩放视野包含所有经纬度\n * @supported weapp, tt\n */\n includePoints(option: TaroMapContext.IncludePointsOption): Promise<TaroGeneral.CallbackResult> {\n const handle = new MethodHandler({\n name: 'includePoints',\n success: option?.success,\n fail: option?.fail,\n complete: option?.complete,\n })\n\n if (!this.map) {\n return handle.fail({ errMsg: '地图实例不存在' })\n }\n\n try {\n const { points, padding } = option\n console.log(logPrefix, '[MapContext.includePoints] 开始执行:', { points, padding })\n\n // 创建空的 LatLngBounds\n const bounds = new TMap.LatLngBounds()\n // 转换坐标格式: {latitude, longitude} -> TMap.LatLng 并扩展边界\n points.forEach((p) => {\n const latLng = new TMap.LatLng(p.latitude, p.longitude)\n bounds.extend(latLng)\n })\n console.log(logPrefix, '[MapContext.includePoints] LatLngBounds:', bounds, 'padding:', padding)\n\n // 转换 padding 格式: Taro [top, right, bottom, left] -> TMap {top, right, bottom, left}\n let paddingOption: number | { top: number, right: number, bottom: number, left: number } | undefined\n if (padding) {\n if (Array.isArray(padding)) {\n // padding 是数组格式 [top, right, bottom, left]\n paddingOption = {\n top: padding[0],\n right: padding[1],\n bottom: padding[2],\n left: padding[3],\n }\n } else {\n // padding 是数字格式,直接使用\n paddingOption = padding as number\n }\n }\n\n // 调用地图的 fitBounds 方法\n this.map.fitBounds(bounds, {\n padding: paddingOption,\n })\n\n console.log(logPrefix, '[MapContext.includePoints] 执行成功')\n\n return handle.success({})\n } catch (error: any) {\n console.error(logPrefix, '[MapContext.includePoints] 执行失败:', error)\n return handle.fail({ errMsg: error?.message || String(error) })\n }\n }\n\n /**\n * 获取当前地图中心的经纬度\n * @supported weapp, tt\n */\n getCenterLocation(option?: TaroMapContext.GetCenterLocationOption): Promise<TaroMapContext.GetCenterLocationSuccessCallbackResult> {\n const handle = new MethodHandler({\n name: 'getCenterLocation',\n success: option?.success,\n fail: option?.fail,\n complete: option?.complete,\n })\n\n if (!this.map) {\n return handle.fail({ errMsg: '地图实例不存在' })\n }\n\n try {\n // 调用腾讯地图 API: map.getCenter()\n const center = this.map.getCenter()\n console.log(logPrefix, '[MapContext.getCenterLocation] 执行成功:', center)\n\n return handle.success({\n latitude: center.lat,\n longitude: center.lng,\n })\n } catch (error: any) {\n console.error(logPrefix, '[MapContext.getCenterLocation] 执行失败:', error)\n return handle.fail({ errMsg: error?.message || String(error) })\n }\n }\n\n /**\n * 设置定位点图标\n * @supported weapp, tt\n */\n setLocMarkerIcon(_option: TaroMapContext.SetLocMarkerIconOption): Promise<TaroGeneral.CallbackResult> {\n console.warn(logPrefix, '[MapContext.setLocMarkerIcon] 暂未实现')\n return Promise.reject(new Error('setLocMarkerIcon: 暂未实现'))\n }\n\n /**\n * 将地图中心移置当前定位点\n * @supported weapp, tt\n */\n moveToLocation(option: TaroMapContext.MoveToLocationOption): Promise<TaroGeneral.CallbackResult> {\n const handle = new MethodHandler({\n name: 'moveToLocation',\n success: option?.success,\n fail: option?.fail,\n complete: option?.complete,\n })\n\n if (!this.map) {\n return handle.fail({ errMsg: '地图实例不存在' })\n }\n\n try {\n const { latitude, longitude } = option\n console.log(logPrefix, '[MapContext.moveToLocation] 开始执行:', { latitude, longitude })\n\n // 参数校验\n if (latitude === undefined || longitude === undefined) {\n return handle.fail({ errMsg: 'latitude 和 longitude 参数必须提供' })\n }\n\n // 调用腾讯地图 API: map.panTo()\n const latLng = new TMap.LatLng(latitude, longitude)\n this.map.panTo(latLng, {} as any)\n\n console.log(logPrefix, '[MapContext.moveToLocation] 执行成功')\n return handle.success({})\n } catch (error: any) {\n console.error(logPrefix, '[MapContext.moveToLocation] 执行失败:', error)\n return handle.fail({ errMsg: error?.message || String(error) })\n }\n }\n\n /**\n * 平移marker,带动画\n * @supported weapp, tt\n */\n translateMarker(_option: TaroMapContext.TranslateMarkerOption): Promise<TaroGeneral.CallbackResult> {\n console.warn(logPrefix, '[MapContext.translateMarker] 暂未实现')\n return Promise.reject(new Error('translateMarker: 暂未实现'))\n }\n\n /**\n * 沿指定路径移动 marker\n */\n moveAlong(_object: any): void {\n console.warn(logPrefix, '[MapContext.moveAlong] 暂未实现')\n throw new Error('moveAlong: 暂未实现')\n }\n\n /**\n * 获取当前地图的视野范围\n * @supported weapp, tt\n */\n getRegion(option?: TaroMapContext.GetRegionOption): Promise<TaroMapContext.GetRegionSuccessCallbackResult> {\n const handle = new MethodHandler({\n name: 'getRegion',\n success: option?.success,\n fail: option?.fail,\n complete: option?.complete,\n })\n\n if (!this.map) {\n return handle.fail({ errMsg: '地图实例不存在' })\n }\n\n try {\n // 调用腾讯地图 API: map.getBounds()\n const bounds = this.map.getBounds()\n console.log(logPrefix, '[MapContext.getRegion] 执行成功:', bounds)\n\n const sw = bounds.getSouthWest()\n const ne = bounds.getNorthEast()\n\n return handle.success({\n southwest: {\n latitude: sw.lat,\n longitude: sw.lng,\n },\n northeast: {\n latitude: ne.lat,\n longitude: ne.lng,\n },\n })\n } catch (error: any) {\n console.error(logPrefix, '[MapContext.getRegion] 执行失败:', error)\n return handle.fail({ errMsg: error?.message || String(error) })\n }\n }\n\n /**\n * 获取当前地图的旋转角\n * @supported weapp, tt\n */\n getRotate(option?: TaroMapContext.GetRotateOption): Promise<TaroMapContext.GetRotateSuccessCallbackResult> {\n const handle = new MethodHandler({\n name: 'getRotate',\n success: option?.success,\n fail: option?.fail,\n complete: option?.complete,\n })\n\n if (!this.map) {\n return handle.fail({ errMsg: '地图实例不存在' })\n }\n\n try {\n // 调用腾讯地图 API: map.getRotation()\n const rotate = this.map.getRotation()\n console.log(logPrefix, '[MapContext.getRotate] 执行成功:', rotate)\n\n return handle.success({\n rotate: rotate,\n })\n } catch (error: any) {\n console.error(logPrefix, '[MapContext.getRotate] 执行失败:', error)\n return handle.fail({ errMsg: error?.message || String(error) })\n }\n }\n\n /**\n * 获取当前地图的倾斜角\n * @supported weapp, tt\n */\n getSkew(option?: TaroMapContext.GetSkewOption): Promise<TaroMapContext.GetSkewSuccessCallbackResult> {\n const handle = new MethodHandler({\n name: 'getSkew',\n success: option?.success,\n fail: option?.fail,\n complete: option?.complete,\n })\n\n if (!this.map) {\n return handle.fail({ errMsg: '地图实例不存在' })\n }\n\n try {\n // 调用腾讯地图 API: map.getPitch()\n const skew = this.map.getPitch()\n console.log(logPrefix, '[MapContext.getSkew] 执行成功:', skew)\n\n return handle.success({\n skew: skew,\n })\n } catch (error: any) {\n console.error(logPrefix, '[MapContext.getSkew] 执行失败:', error)\n return handle.fail({ errMsg: error?.message || String(error) })\n }\n }\n\n /**\n * 获取当前地图的缩放级别\n * @supported weapp, tt\n */\n getScale(option?: TaroMapContext.GetScaleOption): Promise<TaroMapContext.GetScaleSuccessCallbackResult> {\n const handle = new MethodHandler({\n name: 'getScale',\n success: option?.success,\n fail: option?.fail,\n complete: option?.complete,\n })\n\n if (!this.map) {\n return handle.fail({ errMsg: '地图实例不存在' })\n }\n\n try {\n // 调用腾讯地图 API: map.getZoom()\n const scale = this.map.getZoom()\n console.log(logPrefix, '[MapContext.getScale] 执行成功:', scale)\n\n return handle.success({\n scale: scale,\n })\n } catch (error: any) {\n console.error(logPrefix, '[MapContext.getScale] 执行失败:', error)\n return handle.fail({ errMsg: error?.message || String(error) })\n }\n }\n\n /**\n * 设置地图中心点偏移\n * @supported weapp, tt\n */\n setCenterOffset(option: TaroMapContext.SetCenterOffsetOption): Promise<TaroGeneral.CallbackResult> {\n const handle = new MethodHandler({\n name: 'setCenterOffset',\n success: option?.success,\n fail: option?.fail,\n complete: option?.complete,\n })\n\n if (!this.map) {\n return handle.fail({ errMsg: '地图实例不存在' })\n }\n\n try {\n const { offset } = option\n console.log(logPrefix, '[MapContext.setCenterOffset] 开始执行:', { offset })\n\n // 转换 offset 格式: Taro [x, y] -> TMap {x, y}\n const offsetOption = {\n x: offset[0],\n y: offset[1],\n }\n\n // 调用腾讯地图 API: map.setOffset()\n this.map.setOffset(offsetOption)\n\n console.log(logPrefix, '[MapContext.setCenterOffset] 执行成功')\n return handle.success({})\n } catch (error: any) {\n console.error(logPrefix, '[MapContext.setCenterOffset] 执行失败:', error)\n return handle.fail({ errMsg: error?.message || String(error) })\n }\n }\n\n /**\n * 移除个性化图层\n * @supported weapp\n */\n removeCustomLayer(option: TaroMapContext.RemoveCustomLayerOption): Promise<TaroGeneral.CallbackResult> {\n console.warn(logPrefix, '[MapContext.removeCustomLayer] 暂未实现', option)\n return Promise.reject(new Error('removeCustomLayer: 暂未实现'))\n }\n\n /**\n * 添加个性化图层\n * @supported weapp\n */\n addCustomLayer(option: TaroMapContext.AddCustomLayerOption): Promise<TaroGeneral.CallbackResult> {\n console.warn(logPrefix, '[MapContext.addCustomLayer] 暂未实现', option)\n return Promise.reject(new Error('addCustomLayer: 暂未实现'))\n }\n\n /**\n * 创建自定义图片图层\n * @supported weapp, tt\n */\n addGroundOverlay(option: TaroMapContext.AddGroundLayerOption): Promise<TaroGeneral.CallbackResult> {\n console.warn(logPrefix, '[MapContext.addGroundOverlay] 暂未实现', option)\n return Promise.reject(new Error('addGroundOverlay: 暂未实现'))\n }\n\n /**\n * 添加可视化图层\n * @supported weapp\n */\n addVisualLayer(option: TaroMapContext.AddVisualLayerOption): Promise<TaroGeneral.CallbackResult> {\n console.warn(logPrefix, '[MapContext.addVisualLayer] 暂未实现', option)\n return Promise.reject(new Error('addVisualLayer: 暂未实现'))\n }\n\n /**\n * 移除可视化图层\n * @supported weapp\n */\n removeVisualLayer(option: TaroMapContext.RemoveVisualLayerOption): Promise<TaroGeneral.CallbackResult> {\n console.warn(logPrefix, '[MapContext.removeVisualLayer] 暂未实现', option)\n return Promise.reject(new Error('removeVisualLayer: 暂未实现'))\n }\n\n /**\n * 添加弧线\n * @supported weapp\n */\n addArc(option: TaroMapContext.AddArcOption): Promise<TaroGeneral.CallbackResult> {\n console.warn(logPrefix, '[MapContext.addArc] 暂未实现', option)\n return Promise.reject(new Error('addArc: 暂未实现'))\n }\n\n /**\n * 删除弧线\n * @supported weapp\n */\n removeArc(option: TaroMapContext.RemoveArcOption): Promise<TaroGeneral.CallbackResult> {\n console.warn(logPrefix, '[MapContext.removeArc] 暂未实现', option)\n return Promise.reject(new Error('removeArc: 暂未实现'))\n }\n\n /**\n * 限制地图的显示范围\n * @supported weapp\n */\n setBoundary(option: TaroMapContext.SetBoundaryOption): Promise<TaroGeneral.CallbackResult> {\n const handle = new MethodHandler({\n name: 'setBoundary',\n success: option?.success,\n fail: option?.fail,\n complete: option?.complete,\n })\n\n if (!this.map) {\n return handle.fail({ errMsg: '地图实例不存在' })\n }\n\n try {\n const { southwest, northeast } = option\n console.log(logPrefix, '[MapContext.setBoundary] 开始执行:', { southwest, northeast })\n\n // 转换坐标格式: {latitude, longitude} -> TMap.LatLng\n const sw = new TMap.LatLng(southwest.latitude, southwest.longitude)\n const ne = new TMap.LatLng(northeast.latitude, northeast.longitude)\n const bounds = new TMap.LatLngBounds(sw, ne)\n\n // 调用腾讯地图 API: map.setBoundary()\n this.map.setBoundary(bounds)\n\n console.log(logPrefix, '[MapContext.setBoundary] 执行成功')\n return handle.success({})\n } catch (error: any) {\n console.error(logPrefix, '[MapContext.setBoundary] 执行失败:', error)\n return handle.fail({ errMsg: error?.message || String(error) })\n }\n }\n\n /**\n * 更新自定义图片图层\n * @supported weapp, tt\n */\n updateGroundOverlay(option: TaroMapContext.UpdateGroundOverlayOption): Promise<TaroGeneral.CallbackResult> {\n console.warn(logPrefix, '[MapContext.updateGroundOverlay] 暂未实现', option)\n return Promise.reject(new Error('updateGroundOverlay: 暂未实现'))\n }\n\n /**\n * 移除自定义图片图层\n * @supported weapp, tt\n */\n removeGroundOverlay(option: TaroMapContext.RemoveGroundOverlayOption): Promise<TaroGeneral.CallbackResult> {\n console.warn(logPrefix, '[MapContext.removeGroundOverlay] 暂未实现', option)\n return Promise.reject(new Error('removeGroundOverlay: 暂未实现'))\n }\n\n /**\n * 获取经纬度对应的屏幕坐标\n * @supported weapp\n */\n toScreenLocation(option: TaroMapContext.ToScreenLocationOption): Promise<TaroGeneral.CallbackResult> {\n const handle = new MethodHandler({\n name: 'toScreenLocation',\n success: option?.success,\n fail: option?.fail,\n complete: option?.complete,\n })\n\n if (!this.map) {\n return handle.fail({ errMsg: '地图实例不存在' })\n }\n\n try {\n const { latitude, longitude } = option\n console.log(logPrefix, '[MapContext.toScreenLocation] 开始执行:', { latitude, longitude })\n\n // 转换坐标格式: {latitude, longitude} -> TMap.LatLng\n const latLng = new TMap.LatLng(latitude, longitude)\n\n // 调用腾讯地图 API: map.projectToContainer()\n const point = this.map.projectToContainer(latLng)\n\n console.log(logPrefix, '[MapContext.toScreenLocation] 执行成功:', point)\n return handle.success({\n x: point.x,\n y: point.y,\n })\n } catch (error: any) {\n console.error(logPrefix, '[MapContext.toScreenLocation] 执行失败:', error)\n return handle.fail({ errMsg: error?.message || String(error) })\n }\n }\n\n /**\n * 获取屏幕上的点对应的经纬度\n * @supported weapp\n */\n fromScreenLocation(option: TaroMapContext.FromScreenLocationOption): Promise<TaroGeneral.CallbackResult> {\n const handle = new MethodHandler({\n name: 'fromScreenLocation',\n success: option?.success,\n fail: option?.fail,\n complete: option?.complete,\n })\n\n if (!this.map) {\n return handle.fail({ errMsg: '地图实例不存在' })\n }\n\n try {\n const { x, y } = option\n console.log(logPrefix, '[MapContext.fromScreenLocation] 开始执行:', { x, y })\n\n // 转换坐标格式: {x, y} -> TMap.Point\n const point = new TMap.Point(x, y)\n\n // 调用腾讯地图 API: map.unprojectFromContainer()\n const latLng = this.map.unprojectFromContainer(point)\n\n console.log(logPrefix, '[MapContext.fromScreenLocation] 执行成功:', latLng)\n return handle.success({\n latitude: latLng.lat,\n longitude: latLng.lng,\n })\n } catch (error: any) {\n console.error(logPrefix, '[MapContext.fromScreenLocation] 执行失败:', error)\n return handle.fail({ errMsg: error?.message || String(error) })\n }\n }\n\n /**\n * 拉起地图APP选择导航\n * @supported weapp\n */\n openMapApp(option: TaroMapContext.OpenMapAppOption): Promise<TaroGeneral.CallbackResult> {\n console.warn(logPrefix, '[MapContext.openMapApp] 暂未实现', option)\n return Promise.reject(new Error('openMapApp: 暂未实现'))\n }\n\n /**\n * 添加 marker\n * @supported weapp\n */\n addMarkers(option: TaroMapContext.AddMarkersOption): Promise<TaroGeneral.CallbackResult> {\n console.warn(logPrefix, '[MapContext.addMarkers] 暂未实现', option)\n return Promise.reject(new Error('addMarkers: 暂未实现'))\n }\n\n /**\n * 移除 marker\n * @supported weapp\n */\n removeMarkers(option: TaroMapContext.RemoveMarkersOption): Promise<TaroGeneral.CallbackResult> {\n console.warn(logPrefix, '[MapContext.removeMarkers] 暂未实现', option)\n return Promise.reject(new Error('removeMarkers: 暂未实现'))\n }\n\n /**\n * 初始化点聚合的配置\n * @supported weapp\n */\n initMarkerCluster(option?: TaroMapContext.InitMarkerClusterOption): Promise<TaroGeneral.CallbackResult> {\n console.warn(logPrefix, '[MapContext.initMarkerCluster] 暂未实现', option)\n return Promise.reject(new Error('initMarkerCluster: 暂未实现'))\n }\n\n /**\n * 监听地图事件\n * @supported weapp\n */\n on(\n event: keyof TaroMapContext.MapEvent,\n callback: (res: TaroMapContext.MapEvent[keyof TaroMapContext.MapEvent]) => void\n ): void {\n console.warn(logPrefix, '[MapContext.on] 暂未实现', event, callback)\n throw new Error('on: 暂未实现')\n }\n}\n\nexport { MapContextImpl as MapContext }\n"],"names":["mapInstances","Map","registerMapInstance","id","instance","set","console","log","logPrefix","window","__TARO_MAP_CONTEXTS__","contextImpl","MapContextImpl","unregisterMapInstance","delete","_a","getMapInstance","get","constructor","map","warn","includePoints","option","handle","MethodHandler","name","success","fail","complete","errMsg","points","padding","bounds","TMap","LatLngBounds","forEach","p","latLng","LatLng","latitude","longitude","extend","paddingOption","Array","isArray","top","right","bottom","left","fitBounds","error","message","String","getCenterLocation","center","getCenter","lat","lng","setLocMarkerIcon","_option","Promise","reject","Error","moveToLocation","undefined","panTo","translateMarker","moveAlong","_object","getRegion","getBounds","sw","getSouthWest","ne","getNorthEast","southwest","northeast","getRotate","rotate","getRotation","getSkew","skew","getPitch","getScale","scale","getZoom","setCenterOffset","offset","offsetOption","x","y","setOffset","removeCustomLayer","addCustomLayer","addGroundOverlay","addVisualLayer","removeVisualLayer","addArc","removeArc","setBoundary","updateGroundOverlay","removeGroundOverlay","toScreenLocation","point","projectToContainer","fromScreenLocation","Point","unprojectFromContainer","openMapApp","addMarkers","removeMarkers","initMarkerCluster","on","event","callback"],"mappings":"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"}
@@ -21,6 +21,8 @@ function Map(props) {
21
21
  minScale,
22
22
  maxScale,
23
23
  enableRotate,
24
+ rotate,
25
+ skew,
24
26
  markers,
25
27
  polyline,
26
28
  onTap,
@@ -115,7 +117,7 @@ function Map(props) {
115
117
  });
116
118
  /** ************************适配options参数********************** */
117
119
  const hasCenter = typeof latitude === 'number' && typeof longitude === 'number';
118
- const mergedOptions = Object.assign(Object.assign({}, hasCenter ? {
120
+ const mergedOptions = Object.assign(Object.assign(Object.assign(Object.assign({}, hasCenter ? {
119
121
  center: {
120
122
  lat: latitude,
121
123
  lng: longitude
@@ -125,6 +127,10 @@ function Map(props) {
125
127
  minZoom: minScale !== null && minScale !== void 0 ? minScale : 3,
126
128
  maxZoom: maxScale !== null && maxScale !== void 0 ? maxScale : 20,
127
129
  rotatable: enableRotate !== null && enableRotate !== void 0 ? enableRotate : false
130
+ }), typeof rotate === 'number' && {
131
+ rotation: rotate
132
+ }), typeof skew === 'number' && {
133
+ pitch: skew
128
134
  });
129
135
  /** ************************处理事件********************** */
130
136
  // Taro: onTap;腾讯地图: click
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../../../../src/components/map/index.tsx"],"sourcesContent":["/* eslint-disable no-console */\nimport React, { Children, useEffect, useState } from 'react'\nimport { MultiMarker, MultiPolyline, TMap } from 'tlbs-map-react'\n\nimport { createForwardRefComponent } from '../../utils'\nimport { logPrefix } from './common'\nimport { registerMapInstance, unregisterMapInstance } from './MapContext'\nimport MapCustomCallout from './MapCustomCallout'\n\nimport type { MapProps as TaroMapProps } from '@tarojs/components'\nimport type MapTypes from 'tmap-gl-types'\n\nexport interface MapProps extends Omit<TaroMapProps, 'onError'> {\n forwardedRef?: React.MutableRefObject<any>\n authKey?: string\n onError?: (e: any) => void\n}\n\nfunction Map (props: MapProps) {\n const {\n forwardedRef,\n id,\n className,\n style,\n authKey,\n longitude,\n latitude,\n scale,\n minScale,\n maxScale,\n enableRotate,\n markers,\n polyline,\n onTap,\n onAuthSuccess,\n onError,\n } = props\n // eslint-disable-next-line no-console\n console.log(logPrefix, 'props', props)\n\n /** ************************处理 style********************** */\n const styleObj = typeof style === 'string' || style === undefined ? {} : (style as Record<string, string>)\n\n /** ************************处理 marker********************** */\n const normalizedMarkers = markers ?? []\n const markerStyles: Record<string, any> = {}\n const markerGeometries: any[] = []\n\n normalizedMarkers.forEach((m, index) => {\n const markerId = String(m.id ?? index)\n const styleId = `marker-${markerId}`\n\n // Taro: iconPath (string);tlbs-map-react: styles 中指定图标\n // Taro: width, height (number|string);tlbs-map-react: width, height\n // Taro: rotate (number);tlbs-map-react: rotation\n // Taro: alpha (number 0-1);tlbs-map-react: opacity (0-1)\n // Taro: zIndex (number);tlbs-map-react: zIndex\n\n // 解析宽高,支持数字和字符串(如 '20px')\n const parseSize = (size: number | string | undefined): number => {\n if (typeof size === 'number') return size\n if (typeof size === 'string') {\n const parsed = parseInt(size, 10)\n return isNaN(parsed) ? 20 : parsed\n }\n return 20 // 默认宽度\n }\n\n const markerWidth = parseSize(m.width)\n const markerHeight = parseSize(m.height)\n\n // 宽高为 0 时跳过渲染(隐藏 marker,仅保留气泡)\n if (markerWidth === 0 || markerHeight === 0) {\n return\n }\n\n markerStyles[styleId] = {\n width: markerWidth,\n height: markerHeight,\n anchor: { x: markerWidth / 2, y: markerHeight }, // 默认底部中心为锚点\n ...(m.iconPath && { src: m.iconPath }),\n ...(typeof m.rotate === 'number' && { rotation: m.rotate }),\n ...(typeof m.alpha === 'number' && { opacity: m.alpha }),\n ...(typeof m.zIndex === 'number' && { zIndex: m.zIndex }),\n }\n\n markerGeometries.push({\n id: markerId,\n styleId,\n position: { lat: m.latitude, lng: m.longitude },\n })\n })\n\n /** ************************处理 polyline********************** */\n const normalizedPolylines = polyline ?? []\n const polylineStyles: Record<string, any> = {}\n const polylineGeometries: any[] = []\n\n normalizedPolylines.forEach((line, lineIndex) => {\n if (!line.points || line.points.length === 0) return\n\n const styleId = `polyline-${lineIndex}`\n\n // Taro: color (hex);腾讯地图: color\n // Taro: width (number);腾讯地图: width\n // Taro: dottedLine (boolean);腾讯地图: dashArray ([10,10]虚线, [0,0]实线)\n polylineStyles[styleId] = {\n color: line.color || '#3777FF',\n width: Math.round(line.width ?? 3), // 取整,tlbs-map-react 要求 width 为整数\n // 虚线:[10, 10] 表示10像素实线 + 10像素空白;实线:[0, 0]\n dashArray: line.dottedLine ? [10, 10] : [0, 0],\n }\n\n // Taro: points 是 {latitude, longitude}[] 数组\n // tlbs-map-react: geometries 需要路径点数组\n polylineGeometries.push({\n id: String(lineIndex),\n styleId,\n paths: line.points.map((point) => ({\n lat: point.latitude,\n lng: point.longitude,\n })),\n })\n })\n\n /** ************************适配options参数********************** */\n const hasCenter = typeof latitude === 'number' && typeof longitude === 'number'\n const mergedOptions = {\n ...(hasCenter ? { center: { lat: latitude, lng: longitude } } : {}),\n zoom: scale ?? 13,\n minZoom: minScale ?? 3,\n maxZoom: maxScale ?? 20,\n rotatable: enableRotate ?? false, // Taro: enableRotate;tlbs-map-react: options.rotatable\n }\n\n /** ************************处理事件********************** */\n // Taro: onTap;腾讯地图: click\n // 腾讯地图事件返回: MapEvent { latLng: LatLng, point: {x, y}, type, target, originalEvent }\n // Taro 事件格式: BaseEventOrig { type, timeStamp, target, currentTarget, detail, ... }\n const handleMapClick = (e: MapTypes.MapEvent) => {\n console.log(logPrefix, 'source click e:', e)\n if (typeof onTap === 'function') {\n onTap({\n type: e.type,\n timeStamp: Date.now(),\n target: {\n id: id || '',\n tagName: 'map',\n dataset: {},\n },\n currentTarget: {\n id: id || '',\n tagName: 'map',\n dataset: {},\n },\n detail: {\n latitude: e.latLng.lat,\n longitude: e.latLng.lng,\n },\n preventDefault: () => {},\n stopPropagation: () => {},\n })\n }\n }\n\n // 存储地图实例,用于 H5 端自定义气泡\n const [mapInstance, setMapInstance] = useState<MapTypes.Map | null>(null)\n\n // 地图初始化成功\n const handleMapInited = (instance: MapTypes.Map) => {\n console.log(logPrefix, '地图初始化成功', instance)\n setMapInstance(instance)\n\n // 注册地图实例到全局存储\n if (id) {\n registerMapInstance(id, instance)\n console.log(logPrefix, '已注册地图实例到 MapContext, id:', id)\n }\n\n let settled = false\n instance.on('tilesloaded', (_res) => { /** 瓦片加载完成,地图真正可用 */\n // TODO: 临时先这么简单处理鉴权成功\n if (!settled && typeof onAuthSuccess === 'function') {\n settled = true\n onAuthSuccess({\n type: 'authsuccess',\n timeStamp: Date.now(),\n target: {\n id: id || '',\n tagName: 'map',\n dataset: {},\n },\n currentTarget: {\n id: id || '',\n tagName: 'map',\n dataset: {},\n },\n detail: {\n errCode: 0,\n errMsg: 'ok',\n },\n preventDefault: () => {},\n stopPropagation: () => {},\n })\n }\n })\n setTimeout(() => {\n if (!settled && typeof onError === 'function') {\n settled = true\n onError({\n type: 'error',\n timeStamp: Date.now(),\n target: {\n id: id || '',\n tagName: 'map',\n dataset: {},\n },\n currentTarget: {\n id: id || '',\n tagName: 'map',\n dataset: {},\n },\n detail: {\n errCode: 1001,\n errMsg: 'timeout',\n },\n preventDefault: () => {},\n stopPropagation: () => {},\n })\n }\n }, 3000)\n }\n\n // 组件卸载时清理地图实例\n useEffect(() => {\n return () => {\n if (id) {\n unregisterMapInstance(id)\n console.log(logPrefix, '已注销地图实例, id:', id)\n }\n }\n }, [id])\n\n return (\n <TMap\n id={id}\n ref={forwardedRef}\n className={className}\n style={styleObj}\n apiKey={authKey ?? ''}\n options={mergedOptions}\n onClick={handleMapClick}\n onMapInited={handleMapInited}\n >\n {normalizedMarkers.length > 0 ? (\n <MultiMarker id=\"taro-markers\" styles={markerStyles} geometries={markerGeometries} />\n ) : null}\n {polylineGeometries.length > 0 ? (\n <MultiPolyline id=\"taro-polylines\" styles={polylineStyles} geometries={polylineGeometries} />\n ) : null}\n\n {/* H5 端:自动处理 slot=\"callout\" 的 CoverView */}\n {process.env.TARO_ENV === 'h5' ? renderH5CustomCallouts() : props.children}\n </TMap>\n )\n\n /**\n * H5 端渲染自定义气泡\n * 拦截 slot=\"callout\" 的 CoverView,转换为自定义 Overlay\n */\n function renderH5CustomCallouts() {\n if (!mapInstance) return null\n\n // 1. 遍历 props.children,找到 slot=\"callout\" 的 CoverView\n const childrenArray = Children.toArray(props.children)\n const calloutSlot = childrenArray.find((child: any) =>\n React.isValidElement(child) && child.props?.slot === 'callout'\n )\n\n if (!calloutSlot || !React.isValidElement(calloutSlot)) {\n return null\n }\n\n // 2. 遍历内层的 CoverView,提取 markerId 和内容\n const innerCoverViews = Children.toArray(calloutSlot.props.children)\n\n return innerCoverViews.map((child: any) => {\n if (!React.isValidElement(child)) return null\n\n const markerId = child.props?.markerId\n if (!markerId) return null\n\n // 3. 找到对应的 marker 信息\n const marker = normalizedMarkers.find((m: any) => m.id === markerId)\n if (!marker) {\n console.warn(logPrefix, `未找到 markerId=${markerId} 对应的 marker`)\n return null\n }\n\n // 4. 渲染自定义气泡\n return (\n <MapCustomCallout\n key={markerId}\n map={mapInstance}\n markerId={markerId}\n position={{ lat: marker.latitude, lng: marker.longitude }}\n anchorX={marker.customCallout?.anchorX ?? 0}\n anchorY={marker.customCallout?.anchorY ?? 0}\n display={marker.customCallout?.display ?? 'ALWAYS'}\n onCalloutTap={(id) => {\n // 触发 onCalloutTap 事件\n if (typeof props.onCalloutTap === 'function') {\n props.onCalloutTap({\n type: 'callouttap',\n timeStamp: Date.now(),\n target: {\n id: String(id) || '',\n tagName: 'callout',\n dataset: {},\n },\n currentTarget: {\n id: String(id) || '',\n tagName: 'callout',\n dataset: {},\n },\n detail: { markerId: id },\n preventDefault: () => {},\n stopPropagation: () => {},\n })\n }\n }}\n >\n {child.props.children}\n </MapCustomCallout>\n )\n })\n }\n}\n\nexport default createForwardRefComponent(Map)\n\n/**\n * @deprecated 请使用 Taro.createMapContext 代替\n *\n * 此导出仅用于向后兼容,将在未来版本中移除。\n *\n * 推荐用法:\n * ```tsx\n * import Taro from '@tarojs/taro'\n *\n * const mapCtx = Taro.createMapContext('mapId')\n * ```\n */\nexport { createMapContext } from './createMapContext'\n"],"names":["Map","props","forwardedRef","id","className","style","authKey","longitude","latitude","scale","minScale","maxScale","enableRotate","markers","polyline","onTap","onAuthSuccess","onError","console","log","logPrefix","styleObj","undefined","normalizedMarkers","markerStyles","markerGeometries","forEach","m","index","markerId","String","_a","styleId","parseSize","size","parsed","parseInt","isNaN","markerWidth","width","markerHeight","height","anchor","x","y","iconPath","src","rotate","rotation","alpha","opacity","zIndex","push","position","lat","lng","normalizedPolylines","polylineStyles","polylineGeometries","line","lineIndex","points","length","color","Math","round","dashArray","dottedLine","paths","map","point","hasCenter","mergedOptions","Object","assign","center","zoom","minZoom","maxZoom","rotatable","handleMapClick","e","type","timeStamp","Date","now","target","tagName","dataset","currentTarget","detail","latLng","preventDefault","stopPropagation","mapInstance","setMapInstance","useState","handleMapInited","instance","registerMapInstance","settled","on","_res","errCode","errMsg","setTimeout","useEffect","unregisterMapInstance","_jsxs","TMap","ref","apiKey","options","onClick","onMapInited","children","_jsx","MultiMarker","styles","geometries","MultiPolyline","process","env","TARO_ENV","renderH5CustomCallouts","childrenArray","Children","toArray","calloutSlot","find","child","React","isValidElement","slot","innerCoverViews","marker","warn","MapCustomCallout","anchorX","_c","_b","customCallout","anchorY","_e","_d","display","_g","_f","onCalloutTap","createForwardRefComponent"],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sources":["../../../../src/components/map/index.tsx"],"sourcesContent":["/* eslint-disable no-console */\nimport React, { Children, useEffect, useState } from 'react'\nimport { MultiMarker, MultiPolyline, TMap } from 'tlbs-map-react'\n\nimport { createForwardRefComponent } from '../../utils'\nimport { logPrefix } from './common'\nimport { registerMapInstance, unregisterMapInstance } from './MapContext'\nimport MapCustomCallout from './MapCustomCallout'\n\nimport type { MapProps as TaroMapProps } from '@tarojs/components'\nimport type MapTypes from 'tmap-gl-types'\n\nexport interface MapProps extends Omit<TaroMapProps, 'onError'> {\n forwardedRef?: React.MutableRefObject<any>\n authKey?: string\n onError?: (e: any) => void\n}\n\nfunction Map (props: MapProps) {\n const {\n forwardedRef,\n id,\n className,\n style,\n authKey,\n longitude,\n latitude,\n scale,\n minScale,\n maxScale,\n enableRotate,\n rotate,\n skew,\n markers,\n polyline,\n onTap,\n onAuthSuccess,\n onError,\n } = props\n // eslint-disable-next-line no-console\n console.log(logPrefix, 'props', props)\n\n /** ************************处理 style********************** */\n const styleObj = typeof style === 'string' || style === undefined ? {} : (style as Record<string, string>)\n\n /** ************************处理 marker********************** */\n const normalizedMarkers = markers ?? []\n const markerStyles: Record<string, any> = {}\n const markerGeometries: any[] = []\n\n normalizedMarkers.forEach((m, index) => {\n const markerId = String(m.id ?? index)\n const styleId = `marker-${markerId}`\n\n // Taro: iconPath (string);tlbs-map-react: styles 中指定图标\n // Taro: width, height (number|string);tlbs-map-react: width, height\n // Taro: rotate (number);tlbs-map-react: rotation\n // Taro: alpha (number 0-1);tlbs-map-react: opacity (0-1)\n // Taro: zIndex (number);tlbs-map-react: zIndex\n\n // 解析宽高,支持数字和字符串(如 '20px')\n const parseSize = (size: number | string | undefined): number => {\n if (typeof size === 'number') return size\n if (typeof size === 'string') {\n const parsed = parseInt(size, 10)\n return isNaN(parsed) ? 20 : parsed\n }\n return 20 // 默认宽度\n }\n\n const markerWidth = parseSize(m.width)\n const markerHeight = parseSize(m.height)\n\n // 宽高为 0 时跳过渲染(隐藏 marker,仅保留气泡)\n if (markerWidth === 0 || markerHeight === 0) {\n return\n }\n\n markerStyles[styleId] = {\n width: markerWidth,\n height: markerHeight,\n anchor: { x: markerWidth / 2, y: markerHeight }, // 默认底部中心为锚点\n ...(m.iconPath && { src: m.iconPath }),\n ...(typeof m.rotate === 'number' && { rotation: m.rotate }),\n ...(typeof m.alpha === 'number' && { opacity: m.alpha }),\n ...(typeof m.zIndex === 'number' && { zIndex: m.zIndex }),\n }\n\n markerGeometries.push({\n id: markerId,\n styleId,\n position: { lat: m.latitude, lng: m.longitude },\n })\n })\n\n /** ************************处理 polyline********************** */\n const normalizedPolylines = polyline ?? []\n const polylineStyles: Record<string, any> = {}\n const polylineGeometries: any[] = []\n\n normalizedPolylines.forEach((line, lineIndex) => {\n if (!line.points || line.points.length === 0) return\n\n const styleId = `polyline-${lineIndex}`\n\n // Taro: color (hex);腾讯地图: color\n // Taro: width (number);腾讯地图: width\n // Taro: dottedLine (boolean);腾讯地图: dashArray ([10,10]虚线, [0,0]实线)\n polylineStyles[styleId] = {\n color: line.color || '#3777FF',\n width: Math.round(line.width ?? 3), // 取整,tlbs-map-react 要求 width 为整数\n // 虚线:[10, 10] 表示10像素实线 + 10像素空白;实线:[0, 0]\n dashArray: line.dottedLine ? [10, 10] : [0, 0],\n }\n\n // Taro: points 是 {latitude, longitude}[] 数组\n // tlbs-map-react: geometries 需要路径点数组\n polylineGeometries.push({\n id: String(lineIndex),\n styleId,\n paths: line.points.map((point) => ({\n lat: point.latitude,\n lng: point.longitude,\n })),\n })\n })\n\n /** ************************适配options参数********************** */\n const hasCenter = typeof latitude === 'number' && typeof longitude === 'number'\n const mergedOptions = {\n ...(hasCenter ? { center: { lat: latitude, lng: longitude } } : {}),\n zoom: scale ?? 13,\n minZoom: minScale ?? 3,\n maxZoom: maxScale ?? 20,\n rotatable: enableRotate ?? false, // Taro: enableRotate;tlbs-map-react: options.rotatable\n ...(typeof rotate === 'number' && { rotation: rotate }), // Taro: rotate;tlbs-map-react: options.rotation\n ...(typeof skew === 'number' && { pitch: skew }), // Taro: skew;tlbs-map-react: options.pitch\n }\n\n /** ************************处理事件********************** */\n // Taro: onTap;腾讯地图: click\n // 腾讯地图事件返回: MapEvent { latLng: LatLng, point: {x, y}, type, target, originalEvent }\n // Taro 事件格式: BaseEventOrig { type, timeStamp, target, currentTarget, detail, ... }\n const handleMapClick = (e: MapTypes.MapEvent) => {\n console.log(logPrefix, 'source click e:', e)\n if (typeof onTap === 'function') {\n onTap({\n type: e.type,\n timeStamp: Date.now(),\n target: {\n id: id || '',\n tagName: 'map',\n dataset: {},\n },\n currentTarget: {\n id: id || '',\n tagName: 'map',\n dataset: {},\n },\n detail: {\n latitude: e.latLng.lat,\n longitude: e.latLng.lng,\n },\n preventDefault: () => {},\n stopPropagation: () => {},\n })\n }\n }\n\n // 存储地图实例,用于 H5 端自定义气泡\n const [mapInstance, setMapInstance] = useState<MapTypes.Map | null>(null)\n\n // 地图初始化成功\n const handleMapInited = (instance: MapTypes.Map) => {\n console.log(logPrefix, '地图初始化成功', instance)\n setMapInstance(instance)\n\n // 注册地图实例到全局存储\n if (id) {\n registerMapInstance(id, instance)\n console.log(logPrefix, '已注册地图实例到 MapContext, id:', id)\n }\n\n let settled = false\n instance.on('tilesloaded', (_res) => { /** 瓦片加载完成,地图真正可用 */\n // TODO: 临时先这么简单处理鉴权成功\n if (!settled && typeof onAuthSuccess === 'function') {\n settled = true\n onAuthSuccess({\n type: 'authsuccess',\n timeStamp: Date.now(),\n target: {\n id: id || '',\n tagName: 'map',\n dataset: {},\n },\n currentTarget: {\n id: id || '',\n tagName: 'map',\n dataset: {},\n },\n detail: {\n errCode: 0,\n errMsg: 'ok',\n },\n preventDefault: () => {},\n stopPropagation: () => {},\n })\n }\n })\n setTimeout(() => {\n if (!settled && typeof onError === 'function') {\n settled = true\n onError({\n type: 'error',\n timeStamp: Date.now(),\n target: {\n id: id || '',\n tagName: 'map',\n dataset: {},\n },\n currentTarget: {\n id: id || '',\n tagName: 'map',\n dataset: {},\n },\n detail: {\n errCode: 1001,\n errMsg: 'timeout',\n },\n preventDefault: () => {},\n stopPropagation: () => {},\n })\n }\n }, 3000)\n }\n\n // 组件卸载时清理地图实例\n useEffect(() => {\n return () => {\n if (id) {\n unregisterMapInstance(id)\n console.log(logPrefix, '已注销地图实例, id:', id)\n }\n }\n }, [id])\n\n return (\n <TMap\n id={id}\n ref={forwardedRef}\n className={className}\n style={styleObj}\n apiKey={authKey ?? ''}\n options={mergedOptions}\n onClick={handleMapClick}\n onMapInited={handleMapInited}\n >\n {normalizedMarkers.length > 0 ? (\n <MultiMarker id=\"taro-markers\" styles={markerStyles} geometries={markerGeometries} />\n ) : null}\n {polylineGeometries.length > 0 ? (\n <MultiPolyline id=\"taro-polylines\" styles={polylineStyles} geometries={polylineGeometries} />\n ) : null}\n\n {/* H5 端:自动处理 slot=\"callout\" 的 CoverView */}\n {process.env.TARO_ENV === 'h5' ? renderH5CustomCallouts() : props.children}\n </TMap>\n )\n\n /**\n * H5 端渲染自定义气泡\n * 拦截 slot=\"callout\" 的 CoverView,转换为自定义 Overlay\n */\n function renderH5CustomCallouts() {\n if (!mapInstance) return null\n\n // 1. 遍历 props.children,找到 slot=\"callout\" 的 CoverView\n const childrenArray = Children.toArray(props.children)\n const calloutSlot = childrenArray.find((child: any) =>\n React.isValidElement(child) && child.props?.slot === 'callout'\n )\n\n if (!calloutSlot || !React.isValidElement(calloutSlot)) {\n return null\n }\n\n // 2. 遍历内层的 CoverView,提取 markerId 和内容\n const innerCoverViews = Children.toArray(calloutSlot.props.children)\n\n return innerCoverViews.map((child: any) => {\n if (!React.isValidElement(child)) return null\n\n const markerId = child.props?.markerId\n if (!markerId) return null\n\n // 3. 找到对应的 marker 信息\n const marker = normalizedMarkers.find((m: any) => m.id === markerId)\n if (!marker) {\n console.warn(logPrefix, `未找到 markerId=${markerId} 对应的 marker`)\n return null\n }\n\n // 4. 渲染自定义气泡\n return (\n <MapCustomCallout\n key={markerId}\n map={mapInstance}\n markerId={markerId}\n position={{ lat: marker.latitude, lng: marker.longitude }}\n anchorX={marker.customCallout?.anchorX ?? 0}\n anchorY={marker.customCallout?.anchorY ?? 0}\n display={marker.customCallout?.display ?? 'ALWAYS'}\n onCalloutTap={(id) => {\n // 触发 onCalloutTap 事件\n if (typeof props.onCalloutTap === 'function') {\n props.onCalloutTap({\n type: 'callouttap',\n timeStamp: Date.now(),\n target: {\n id: String(id) || '',\n tagName: 'callout',\n dataset: {},\n },\n currentTarget: {\n id: String(id) || '',\n tagName: 'callout',\n dataset: {},\n },\n detail: { markerId: id },\n preventDefault: () => {},\n stopPropagation: () => {},\n })\n }\n }}\n >\n {child.props.children}\n </MapCustomCallout>\n )\n })\n }\n}\n\nexport default createForwardRefComponent(Map)\n\n/**\n * @deprecated 请使用 Taro.createMapContext 代替\n *\n * 此导出仅用于向后兼容,将在未来版本中移除。\n *\n * 推荐用法:\n * ```tsx\n * import Taro from '@tarojs/taro'\n *\n * const mapCtx = Taro.createMapContext('mapId')\n * ```\n */\nexport { createMapContext } from './createMapContext'\n"],"names":["Map","props","forwardedRef","id","className","style","authKey","longitude","latitude","scale","minScale","maxScale","enableRotate","rotate","skew","markers","polyline","onTap","onAuthSuccess","onError","console","log","logPrefix","styleObj","undefined","normalizedMarkers","markerStyles","markerGeometries","forEach","m","index","markerId","String","_a","styleId","parseSize","size","parsed","parseInt","isNaN","markerWidth","width","markerHeight","height","anchor","x","y","iconPath","src","rotation","alpha","opacity","zIndex","push","position","lat","lng","normalizedPolylines","polylineStyles","polylineGeometries","line","lineIndex","points","length","color","Math","round","dashArray","dottedLine","paths","map","point","hasCenter","mergedOptions","center","zoom","minZoom","maxZoom","rotatable","pitch","handleMapClick","e","type","timeStamp","Date","now","target","tagName","dataset","currentTarget","detail","latLng","preventDefault","stopPropagation","mapInstance","setMapInstance","useState","handleMapInited","instance","registerMapInstance","settled","on","_res","errCode","errMsg","setTimeout","useEffect","unregisterMapInstance","_jsxs","TMap","ref","apiKey","options","onClick","onMapInited","children","_jsx","MultiMarker","styles","geometries","MultiPolyline","process","env","TARO_ENV","renderH5CustomCallouts","childrenArray","Children","toArray","calloutSlot","find","child","React","isValidElement","slot","innerCoverViews","marker","warn","MapCustomCallout","anchorX","_c","_b","customCallout","anchorY","_e","_d","display","_g","_f","onCalloutTap","createForwardRefComponent"],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@tarojs/components-react",
3
- "version": "4.1.12-beta.33",
3
+ "version": "4.1.12-beta.35",
4
4
  "description": "",
5
5
  "main:h5": "dist/index.js",
6
6
  "main": "dist/index.js",
@@ -30,9 +30,9 @@
30
30
  "swiper": "11.1.15",
31
31
  "tlbs-map-react": "^1.1.1",
32
32
  "tslib": "^2.6.2",
33
- "@tarojs/components": "4.1.12-beta.33",
34
- "@tarojs/taro": "4.1.12-beta.33",
35
- "@tarojs/shared": "4.1.12-beta.33"
33
+ "@tarojs/shared": "4.1.12-beta.35",
34
+ "@tarojs/taro": "4.1.12-beta.35",
35
+ "@tarojs/components": "4.1.12-beta.35"
36
36
  },
37
37
  "devDependencies": {
38
38
  "@babel/plugin-transform-runtime": "^7.24.1",
@@ -49,8 +49,8 @@
49
49
  "solid-js": "^1.8.16",
50
50
  "ts-jest": "^29.1.1",
51
51
  "tmap-gl-types": "^0.1.8",
52
- "@tarojs/helper": "4.1.12-beta.33",
53
- "@tarojs/runtime": "4.1.12-beta.33"
52
+ "@tarojs/helper": "4.1.12-beta.35",
53
+ "@tarojs/runtime": "4.1.12-beta.35"
54
54
  },
55
55
  "peerDependencies": {
56
56
  "react": "*",