Skip to content

Commit d7e1739

Browse files
committed
fix(VTreeview): wrong isOpen state in prepend slot
fixes #20830
1 parent cb2d96b commit d7e1739

File tree

3 files changed

+7
-4
lines changed

3 files changed

+7
-4
lines changed

packages/vuetify/src/composables/nested/nested.ts

+1-1
Original file line numberDiff line numberDiff line change
@@ -130,7 +130,7 @@ export const useNested = (props: NestedProps) => {
130130
const children = ref(new Map<unknown, unknown[]>())
131131
const parents = ref(new Map<unknown, unknown>())
132132

133-
const opened = useProxiedModel(props, 'opened', props.opened, v => new Set(v), v => [...v.values()])
133+
const opened = useProxiedModel(props, 'opened', props.opened, v => new Set(toRaw(v)), v => [...v.values()])
134134

135135
const activeStrategy = computed(() => {
136136
if (typeof props.activeStrategy === 'object') return props.activeStrategy

packages/vuetify/src/composables/nested/openStrategies.ts

+5-2
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,6 @@
1+
// Utilities
2+
import { toRaw } from 'vue'
3+
14
export type OpenStrategyFn = (data: {
25
id: unknown
36
value: boolean
@@ -47,12 +50,12 @@ export const singleOpenStrategy: OpenStrategy = {
4750
export const multipleOpenStrategy: OpenStrategy = {
4851
open: ({ id, value, opened, parents }) => {
4952
if (value) {
50-
let parent = parents.get(id)
53+
let parent = toRaw(parents.get(id))
5154
opened.add(id)
5255

5356
while (parent != null && parent !== id) {
5457
opened.add(parent)
55-
parent = parents.get(parent)
58+
parent = toRaw(parents.get(parent))
5659
}
5760

5861
return opened

packages/vuetify/src/labs/VTreeview/VTreeviewChildren.tsx

+1-1
Original file line numberDiff line numberDiff line change
@@ -128,7 +128,7 @@ export const VTreeviewChildren = genericComponent<new <T extends InternalListIte
128128
return children ? (
129129
<VTreeviewGroup
130130
{ ...treeviewGroupProps }
131-
value={ props.returnObject ? item.raw : treeviewGroupProps?.value }
131+
value={ props.returnObject ? toRaw(item.raw) : treeviewGroupProps?.value }
132132
>
133133
{{
134134
activator: ({ props: activatorProps }) => {

0 commit comments

Comments
 (0)