Skip to content

Tree Select

This component can be used to select one or multiple items in a list or group.

This component depends on third-party component library for Vue 3:

Example Usage

Example

Themen auswählen
Themen auswählen
Ausgewählte Themen:
vue
<template>
  <div>
    <SkTreeSelect
      v-model="selectedSubjects"
      :options="topics"
      class="mr-s mb-l"
      placeholder="Themen auswählen"
      selection-mode="checkbox"
    />

    <SkTreeSelect
      v-model="selectedSubjects"
      :options="topics"
      class="mr-s mb-l"
      placeholder="Themen auswählen"
      selection-mode="multiple"
    />
  </div>
  <div>Ausgewählte Themen: {{ selectedSubjects }}</div>
</template>

<script setup>
import { ref } from 'vue';
import SkTreeSelect from '../../../src/components/SkTreeSelect.vue';

const selectedSubjects = ref(null);

const topics = ref([
  {
    label: 'Mathematik ist ein tolles Fach Mathematik',
    key: 'Mathe',
    children: [
      { label: 'Analysis', key: 'AN' },
      { label: 'Algebra', key: 'AL' },
      { label: 'Geometrie', key: 'GE' },
    ],
  },
  {
    label: 'Deutsch',
    key: 'DE',
    children: [
      { label: 'Gedichte', key: 'GE' },
      { label: 'Romane', key: 'RO' },
      { label: 'Kurzgeschichten', key: 'KU' },
    ],
  },
  {
    label: 'Biologie',
    key: 'BIO',
    children: [
      { label: 'Tiere', key: 'TI' },
      { label: 'Pflanzen', key: 'PL' },
      { label: 'Mikroorganismen', key: 'MI' },
    ],
  },
  { label: 'Chemie', key: 'CH' },
  { label: 'Deutsch2', key: 'DE2' },
  { label: 'Biologie2', key: 'BIO2' },
  { label: 'Chemie2', key: 'CH2' },
]);
</script>

Reference

This component can be extended with all options from PrimeVue

Properties

NameTypeDefaultDescription
v-modelArray[]The final choosen options
detailedBooleanfalseShow the selected elements inside the input or not

Events

NameParametersDescription
click$eventdo something
update:modelValue$eventtriggered whenever the input changes