UNPKG

vue-tianditu2

Version:
1 lines 1.14 kB
{"version":3,"file":"mapRoot.mjs","sources":["../../../packages/use/mapRoot.ts"],"sourcesContent":["import { inject, type Ref } from \"vue\";\nimport type { Emitter } from \"mitt\";\nimport type { MapEvents } from \"~/utils/emitter\";\n\n/**\n * 获取根地图实例\n */\nexport function useMapRoot(): Promise<T.Map> {\n return new Promise(resolve => {\n const mapRoot = inject<Ref<T.Map>>(\"mapRoot\");\n const mapEmitter = inject<Emitter<MapEvents>>(\"mapEmitter\");\n if (mapRoot?.value) {\n resolve(mapRoot?.value);\n } else {\n mapEmitter?.on(\"mapInit\", resolver);\n }\n\n function resolver(map: T.Map) {\n mapEmitter?.off(\"mapInit\", resolver);\n resolve(map);\n }\n });\n}\n"],"names":["useMapRoot","resolve","mapRoot","inject","mapEmitter","resolver","map"],"mappings":";AAOO,SAASA,IAA6B;AACpC,SAAA,IAAI,QAAQ,CAAWC,MAAA;AACtB,UAAAC,IAAUC,EAAmB,SAAS,GACtCC,IAAaD,EAA2B,YAAY;AAC1D,IAAID,KAAA,QAAAA,EAAS,QACXD,EAAQC,KAAA,gBAAAA,EAAS,KAAK,IAEVE,KAAA,QAAAA,EAAA,GAAG,WAAWC;AAG5B,aAASA,EAASC,GAAY;AAChB,MAAAF,KAAA,QAAAA,EAAA,IAAI,WAAWC,IAC3BJ,EAAQK,CAAG;AAAA,IAAA;AAAA,EACb,CACD;AACH;"}