feat: add ancestor node
This commit is contained in:
parent
6c927ceb79
commit
308e7d40f3
1 changed files with 6 additions and 2 deletions
|
|
@ -21,6 +21,7 @@ type Props = {
|
||||||
iconSize?: string;
|
iconSize?: string;
|
||||||
selectable?: boolean;
|
selectable?: boolean;
|
||||||
selectedNode?: Node[];
|
selectedNode?: Node[];
|
||||||
|
ancestorNode?: Node[];
|
||||||
decoration?: {
|
decoration?: {
|
||||||
level?: number;
|
level?: number;
|
||||||
bg?: string;
|
bg?: string;
|
||||||
|
|
@ -34,7 +35,7 @@ const nodes = defineModel<Node[]>('nodes', { required: true });
|
||||||
|
|
||||||
const emits = defineEmits<{
|
const emits = defineEmits<{
|
||||||
(e: 'checked'): void;
|
(e: 'checked'): void;
|
||||||
(e: 'select', node: Node): void;
|
(e: 'select', node: Node, ancestor?: Node[]): void;
|
||||||
}>();
|
}>();
|
||||||
|
|
||||||
const dec = props.decoration?.find((v) => v.level === (props.level || 0));
|
const dec = props.decoration?.find((v) => v.level === (props.level || 0));
|
||||||
|
|
@ -162,8 +163,11 @@ function toggleExpand(node: Node) {
|
||||||
$emit('checked');
|
$emit('checked');
|
||||||
}
|
}
|
||||||
"
|
"
|
||||||
@select="(v) => $emit('select', v)"
|
@select="(v) => $emit('select', v, props.ancestorNode)"
|
||||||
:level="(level || 0) + 1"
|
:level="(level || 0) + 1"
|
||||||
|
:ancestorNode="
|
||||||
|
!props.ancestorNode ? [node] : [...props.ancestorNode, node]
|
||||||
|
"
|
||||||
:expandable
|
:expandable
|
||||||
:decoration
|
:decoration
|
||||||
/>
|
/>
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue