Skip to content
Docs version
@hungpvq/vue-map@1.2.0@hungpvq/vue-map-core@1.2.0@hungpvq/vue-map-dataset@1.2.0@hungpvq/vue-map-draw@1.2.0@hungpvq/map-draw@1.2.0@hungpvq/react-map@1.2.0@hungpvq/react-map-core@1.2.0@hungpvq/react-map-dataset@1.2.0@hungpvq/react-map-draw@1.2.0

Component Management Control ​

Renders overlay UI that menus open with addComponent (style editor, layer detail, dataset detail, attribute table, export, …). Required next to LayerControl / IdentifyControl / DatasetControl if those menus should show dialogs.

Events: none. Closing a dialog calls the store removeComponent internally.

Props ​

PropDescriptionTypeRequiredDefault Value
mapIdstringfalse--
dragIdstringfalse--
btnWidthnumberfalse40
controlOrderCSS flex order for the standalone buttonnumberfalse0
position'top-left', 'top-right', 'bottom-left', 'bottom-right'false'bottom-right'
controlLayout'standalone' (corner), 'toolbar' (always in toolbar), 'button' (always corner; not auto-promoted on mobile)'standalone' | 'toolbar' | 'button'false'standalone'
controlVisiblebooleanfalsetrue

Map also accepts buttonInMobile ('button' | 'toolbar' | 'menu', default 'button'). On viewports ≤640px:

  • 'button' — leave corner buttons unchanged
  • 'toolbar' — move declared control buttons into a single ToolbarControl host (except controlLayout="button"). Mount one ToolbarControl in the map slot
  • 'menu' — hide per-control corner buttons; fan out intact clusters by position into corner stacks with outside-in More. Mount one ToolbarControl.

See ToolbarControl.

No extra props. mapId is enough (inherited from <Map>).

Vue ​

vue
<template>
  <Map>
    <LayerControl
      position="top-left"
      show
    />
    <IdentifyControl position="top-right" />
    <DatasetControl position="top-left" />
    <ComponentManagementControl />
  </Map>
</template>

<script setup lang="ts">
import { Map } from '@hungpvq/vue-map-core';
import { LayerControl, IdentifyControl, DatasetControl, ComponentManagementControl } from '@hungpvq/vue-map-dataset';
</script>

React ​

tsx
<LayerControl position="top-left" show />
<ComponentManagementControl />

Needs installMapApp (or createDatasetRegistryPlugin) so keys like style-control, layer-detail, dataset-detail, attribute-table, layer-action-export-geo resolve.