Panele nawigacyjne
Paski boczne OpenPencil zazwyczaj łączą dwa obszary:
- nawigację po stronach
- nawigację po warstwach
Vue SDK udostępnia bezstanowe prymitywy dla obu.
Nawigacja po stronach
Użyj PageListRoot lub usePageList().
vue
<PageListRoot v-slot="{ pages, currentPageId, switchPage, addPage }">
<div>
<button v-for="page in pages" :key="page.id" @click="switchPage(page.id)">
{{ page.name }}
</button>
<button @click="addPage()">Nowa strona</button>
</div>
</PageListRoot>Nawigacja po warstwach
Użyj LayerTreeRoot, gdy chcesz strukturę drzewa zarządzaną przez SDK, ale prezentację należącą do aplikacji.
vue
<LayerTreeRoot v-slot="{ items, selectedIds, select, toggleExpand, getKey, getChildren }">
<TreeView
:items="items"
:selected-ids="selectedIds"
:get-key="getKey"
:get-children="getChildren"
@select="select"
@toggle-expand="toggleExpand"
/>
</LayerTreeRoot>Praktyczny wzorzec
Popularny layout to:
- strony u góry paska bocznego
- warstwy poniżej
- szczegóły lub kontrolki inline zmiany nazwy osadzone w komponentach wierszy