UNPKG

@vuemap/vue-amap

Version:

高德地图vue3版本封装

1 lines 3.33 kB
{"version":3,"file":"HeatMap.vue2.mjs","sources":["../../../../../../packages/layer/data/HeatMap/HeatMap.vue"],"sourcesContent":["<template>\r\n <div />\r\n</template>\r\n<script setup lang=\"ts\">\r\nimport {defineOptions} from 'vue';\r\nimport {useRegister} from \"../../../../mixins\";\r\nimport {buildProps} from \"../../../../utils\";\r\nimport type {PropType} from 'vue';\r\n\r\ndefineOptions({\r\n name: 'ElAmapLayerHeatMap',\r\n inheritAttrs: false\r\n});\r\n\r\nconst props = defineProps(buildProps({\r\n radius: {\r\n type: Number\r\n }, // 热力图中单个点的半径,默认:30,单位:pixel\r\n gradient: {\r\n type: Object as PropType<Record<number, string>>\r\n }, // 热力图的渐变区间,热力图按照设置的颜色及间隔显示热力图,例{0.4:'rgb(0, 255, 255)',0.85:'rgb(100, 0, 255)',},其中 key 表示间隔位置,取值范围: [0,1] ,value 为颜色值。默认:heatmap.js标准配色方案\r\n zooms: {\r\n type: Array\r\n }, // 支持的缩放级别范围,默认范围 [2-30]\r\n opacity: {\r\n type: Object as PropType<[number, number]>\r\n }, // 热力图透明度区间数组,取值范围 [0,1] ,0表示完全透明,1表示不透明,默认: [0,1]\r\n config: {\r\n type: Object\r\n }, // 3D热力图属性\r\n dataSet: {\r\n type: Object as PropType<AMap.HeatMapDataSet>\r\n }// 热力图数据集\r\n}));\r\nconst emits = defineEmits(['init']);\r\n\r\nlet $amapComponent: AMap.HeatMap;\r\n\r\nconst {$$getInstance, parentInstance} = useRegister<AMap.HeatMap, AMap.Map>((options, parentComponent) => {\r\n return new Promise<AMap.HeatMap>((resolve) => {\r\n AMap.plugin(['AMap.HeatMap'], () => {\r\n delete options.dataSet;\r\n $amapComponent = new AMap.HeatMap(parentComponent, options);\r\n if (props.dataSet) {\r\n $amapComponent.setDataSet(props.dataSet);\r\n }\r\n resolve($amapComponent);\r\n });\r\n });\r\n\r\n}, {\r\n emits,\r\n destroyComponent () {\r\n if ($amapComponent && parentInstance?.$amapComponent) {\r\n $amapComponent.setDataSet({\r\n data: [],\r\n max: 0\r\n });\r\n $amapComponent.setMap(null as any);\r\n $amapComponent = null as any;\r\n }\r\n },\r\n});\r\n\r\ndefineExpose({\r\n $$getInstance\r\n});\r\n\r\n</script>\r\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAcA,IAAA,MAAM,KAAQ,GAAA,OAAA,CAAA;AAoBd,IAAA,MAAM,KAAQ,GAAA,MAAA,CAAA;AAEd,IAAI,IAAA,cAAA,CAAA;AAEJ,IAAA,MAAM,EAAC,aAAe,EAAA,cAAA,KAAkB,WAAoC,CAAA,CAAC,SAAS,eAAoB,KAAA;AACxG,MAAO,OAAA,IAAI,OAAsB,CAAA,CAAC,OAAY,KAAA;AAC5C,QAAA,IAAA,CAAK,MAAO,CAAA,CAAC,cAAc,CAAA,EAAG,MAAM;AAClC,UAAA,OAAO,OAAQ,CAAA,OAAA,CAAA;AACf,UAAA,cAAA,GAAiB,IAAI,IAAA,CAAK,OAAQ,CAAA,eAAA,EAAiB,OAAO,CAAA,CAAA;AAC1D,UAAA,IAAI,MAAM,OAAS,EAAA;AACjB,YAAe,cAAA,CAAA,UAAA,CAAW,MAAM,OAAO,CAAA,CAAA;AAAA,WACzC;AACA,UAAA,OAAA,CAAQ,cAAc,CAAA,CAAA;AAAA,SACvB,CAAA,CAAA;AAAA,OACF,CAAA,CAAA;AAAA,KAEA,EAAA;AAAA,MACD,KAAA;AAAA,MACA,gBAAoB,GAAA;AAClB,QAAI,IAAA,cAAA,KAAkB,iDAAgB,cAAgB,CAAA,EAAA;AACpD,UAAA,cAAA,CAAe,UAAW,CAAA;AAAA,YACxB,MAAM,EAAC;AAAA,YACP,GAAK,EAAA,CAAA;AAAA,WACN,CAAA,CAAA;AACD,UAAA,cAAA,CAAe,OAAO,IAAW,CAAA,CAAA;AACjC,UAAiB,cAAA,GAAA,IAAA,CAAA;AAAA,SACnB;AAAA,OACF;AAAA,KACD,CAAA,CAAA;AAED,IAAa,QAAA,CAAA;AAAA,MACX,aAAA;AAAA,KACD,CAAA,CAAA;;;;;;;;;"}