@tarojs/components-react 4.1.12-beta.22 → 4.1.12-beta.26

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.
@@ -55,6 +55,10 @@ function Map(props) {
55
55
  };
56
56
  const markerWidth = parseSize(m.width);
57
57
  const markerHeight = parseSize(m.height);
58
+ // 宽高为 0 时跳过渲染(隐藏 marker,仅保留气泡)
59
+ if (markerWidth === 0 || markerHeight === 0) {
60
+ return;
61
+ }
58
62
  markerStyles[styleId] = Object.assign(Object.assign(Object.assign(Object.assign({
59
63
  width: markerWidth,
60
64
  height: markerHeight,
@@ -93,7 +97,8 @@ function Map(props) {
93
97
  // Taro: dottedLine (boolean);腾讯地图: dashArray ([10,10]虚线, [0,0]实线)
94
98
  polylineStyles[styleId] = {
95
99
  color: line.color || '#3777FF',
96
- width: (_a = line.width) !== null && _a !== void 0 ? _a : 3,
100
+ width: Math.round((_a = line.width) !== null && _a !== void 0 ? _a : 3),
101
+ // 取整,tlbs-map-react 要求 width 为整数
97
102
  // 虚线:[10, 10] 表示10像素实线 + 10像素空白;实线:[0, 0]
98
103
  dashArray: line.dottedLine ? [10, 10] : [0, 0]
99
104
  };
@@ -288,12 +293,12 @@ function Map(props) {
288
293
  type: 'callouttap',
289
294
  timeStamp: Date.now(),
290
295
  target: {
291
- id: id || '',
296
+ id: String(id) || '',
292
297
  tagName: 'callout',
293
298
  dataset: {}
294
299
  },
295
300
  currentTarget: {
296
- id: id || '',
301
+ id: String(id) || '',
297
302
  tagName: 'callout',
298
303
  dataset: {}
299
304
  },
@@ -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 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: line.width ?? 3,\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: id || '',\n tagName: 'callout',\n dataset: {},\n },\n currentTarget: {\n id: 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","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 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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"}
@@ -55,6 +55,10 @@ function Map(props) {
55
55
  };
56
56
  const markerWidth = parseSize(m.width);
57
57
  const markerHeight = parseSize(m.height);
58
+ // 宽高为 0 时跳过渲染(隐藏 marker,仅保留气泡)
59
+ if (markerWidth === 0 || markerHeight === 0) {
60
+ return;
61
+ }
58
62
  markerStyles[styleId] = Object.assign(Object.assign(Object.assign(Object.assign({
59
63
  width: markerWidth,
60
64
  height: markerHeight,
@@ -93,7 +97,8 @@ function Map(props) {
93
97
  // Taro: dottedLine (boolean);腾讯地图: dashArray ([10,10]虚线, [0,0]实线)
94
98
  polylineStyles[styleId] = {
95
99
  color: line.color || '#3777FF',
96
- width: (_a = line.width) !== null && _a !== void 0 ? _a : 3,
100
+ width: Math.round((_a = line.width) !== null && _a !== void 0 ? _a : 3),
101
+ // 取整,tlbs-map-react 要求 width 为整数
97
102
  // 虚线:[10, 10] 表示10像素实线 + 10像素空白;实线:[0, 0]
98
103
  dashArray: line.dottedLine ? [10, 10] : [0, 0]
99
104
  };
@@ -288,12 +293,12 @@ function Map(props) {
288
293
  type: 'callouttap',
289
294
  timeStamp: Date.now(),
290
295
  target: {
291
- id: id || '',
296
+ id: String(id) || '',
292
297
  tagName: 'callout',
293
298
  dataset: {}
294
299
  },
295
300
  currentTarget: {
296
- id: id || '',
301
+ id: String(id) || '',
297
302
  tagName: 'callout',
298
303
  dataset: {}
299
304
  },
@@ -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 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: line.width ?? 3,\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: id || '',\n tagName: 'callout',\n dataset: {},\n },\n currentTarget: {\n id: 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","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 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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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@tarojs/components-react",
3
- "version": "4.1.12-beta.22",
3
+ "version": "4.1.12-beta.26",
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.22",
34
- "@tarojs/shared": "4.1.12-beta.22",
35
- "@tarojs/taro": "4.1.12-beta.22"
33
+ "@tarojs/components": "4.1.12-beta.26",
34
+ "@tarojs/shared": "4.1.12-beta.26",
35
+ "@tarojs/taro": "4.1.12-beta.26"
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.22",
53
- "@tarojs/runtime": "4.1.12-beta.22"
52
+ "@tarojs/runtime": "4.1.12-beta.26",
53
+ "@tarojs/helper": "4.1.12-beta.26"
54
54
  },
55
55
  "peerDependencies": {
56
56
  "react": "*",