Tree
Hierarchical tree view with expandable nodes.
Usage
<w-tree label="File browser">
<w-slot item name="folder1" expandable>
<div>
<span>Documents</span>
<w-slot item name="file1"><div>Report.pdf</div></w-slot>
<w-slot item name="file2"><div>Notes.txt</div></w-slot>
</div>
</w-slot>
<w-slot item name="folder2" expandable>
<div>
<span>Images</span>
<w-slot item name="img1"><div>Photo.jpg</div></w-slot>
</div>
</w-slot>
</w-tree>
Props
| Prop | Type | Default | Description |
|---|---|---|---|
value | string | "" | Selected item name |
expanded | string | "" | Comma-separated expanded item names |
label | string | "" | Accessible label |
Slots
| Slot | Element | Description |
|---|---|---|
item | Container | Tree item (use name, optionally expandable) |
Events
| Event | Detail | Description |
|---|---|---|
change | { value } | Selection changed |
expand | { item, expanded } | Item expanded/collapsed |
Keyboard
| Key | Action |
|---|---|
ArrowDown | Next visible item |
ArrowUp | Previous visible item |
ArrowRight | Expand or move to first child |
ArrowLeft | Collapse or move to parent |
Home | First item |
End | Last visible item |
Enter / Space | Select item |
Accessibility
- Container has
role="tree" - Items have
role="treeitem"witharia-level - Expandable items have
aria-expanded aria-selectedfor selection state