Skip to content

TransferTree Component

Basic Usage

Source List6/0
Node 1
Node 1-1
Node 1-2
Node 2
Node 2-1
Node 2-2
Target List0/0

<script setup>
import { ref } from 'vue'
import { TransferTree } from '@otdrfu/element-plus-pro'

const data = ref([
  {
    id: '1',
    label: 'Node 1',
    children: [
      { id: '1-1', label: 'Node 1-1' },
      { id: '1-2', label: 'Node 1-2' }
    ]
  },
  {
    id: '2',
    label: 'Node 2',
    children: [
      { id: '2-1', label: 'Node 2-1' },
      { id: '2-2', label: 'Node 2-2' }
    ]
  }
])
</script>

<template>
  <TransferTree
    filterable
    :data-source="data"
  />
</template>

Attributes

ParameterDescriptionTypeOptionsDefault
widthTotal container widthstring800px
heightTotal container heightstring500px
dataSourceLeft tree data sourcearray[ ]
nodeKeyel-tree key (must be unique)stringid
defaultPropsel-tree configurationObject{ label: "label", children: "children" }
default-checked-keysDefault selected nodes for left tree transferarray[ ]
default-expanded-keysDefault expanded tree nodesarray[ ]
accordionWhether to expand only one tree node at a timebooleanfalse
render-after-expandWhether to render child nodes only after first expansionbooleantrue
expand-on-click-nodeWhether to expand/collapse node when clicking on itbooleantrue
father-chooseWhether to strictly follow parent-child independence, allowing parent nodes to be selected for transferbooleanfalse
isRadioWhether left data source is single-selectbooleanfalse
openAllWhether tree nodes are expanded by defaultbooleantrue
filterableWhether searchablebooleanfalse
filter-placeholderSearch box placeholderstringPlease enter search content
filter-methodCustom search methodfunction
titlesCustom titlesarray['Source', 'Target']
button-textsCustom button textsarray[ ]
listSortFifoRight list sorting method: default true - nodes sorted by selection order; optional false - nodes sorted by left tree structurebooleantrue

Slot

NameDescription
left-footerContent at the bottom of left list
right-footerContent at the bottom of right list

Methods

MethodDescriptionParameters
clearQueryClear search keywords for a panel'left' / 'right' / 'all', specify which search box to clear
getTreeCheckedGet all checked states of left tree'leftKeys', 'leftHarfKeys', 'leftNodes', 'leftHalfNodes'

Events

Event NameDescriptionCallback Parameters
changeTriggered when options are transferred between panelsCurrent value, transfer direction ('left' / 'right'), array of transferred data keys
left-check-changeTriggered when left list elements are checked/unchecked by userArray of currently checked element keys, array of keys whose check state changed
right-check-changeTriggered when right list elements are checked/unchecked by userArray of currently checked element keys, array of keys whose check state changed

TIP

Based on element-tree-transfer-pro component. For Vue 2 version documentation, please refer to: element-tree-transfer-pro