Skip to content

Commit 975fb03

Browse files
committed
- add support for replacing virtualized body content with e.g. placeholder when no items are present
1 parent a639a38 commit 975fb03

File tree

4 files changed

+26
-18
lines changed

4 files changed

+26
-18
lines changed

package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "vue-windowing",
3-
"version": "0.7.1",
3+
"version": "0.8.0",
44
"description": "Set of components used for virtualizing DOM",
55
"main": "dist/vue-windowing.ssr.js",
66
"browser": "dist/vue-windowing.esm.js",

src/components/ExpandingList.vue

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,9 @@
66
<template #header>
77
<slot name="header" />
88
</template>
9+
<template #body>
10+
<slot name="body" />
11+
</template>
912
<template #item="{ item, index}">
1013
<div
1114
v-if="typeof headers[item] !== 'undefined'"

src/components/NestedList.vue

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,9 @@
66
<template #header>
77
<slot name="header" />
88
</template>
9+
<template #body>
10+
<slot name="body" />
11+
</template>
912
<template #item="{ item, index}">
1013
<slot
1114
v-if="parents[index]"

src/components/VirtualScroll.vue

Lines changed: 19 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -5,25 +5,27 @@
55
ref="root"
66
@scroll="onScroll">
77
<slot name="header" />
8-
<div
9-
:style="viewportStyle"
10-
class="virtual-scroll__viewport">
8+
<slot name="body">
119
<div
12-
:style="spacerStyle"
13-
class="virtual-scroll__spacer">
14-
<AutoHeightMeasurer
15-
v-for="(item, index) in visibleItems"
16-
:key="index + startNode"
17-
:index="index + startNode"
18-
:height="cachedHeight[index + startNode]"
19-
@height="onMeasuredHeight">
20-
<slot
21-
name="item"
22-
:item="item"
23-
:index="index + startNode" />
24-
</AutoHeightMeasurer>
10+
:style="viewportStyle"
11+
class="virtual-scroll__viewport">
12+
<div
13+
:style="spacerStyle"
14+
class="virtual-scroll__spacer">
15+
<AutoHeightMeasurer
16+
v-for="(item, index) in visibleItems"
17+
:key="index + startNode"
18+
:index="index + startNode"
19+
:height="cachedHeight[index + startNode]"
20+
@height="onMeasuredHeight">
21+
<slot
22+
name="item"
23+
:item="item"
24+
:index="index + startNode" />
25+
</AutoHeightMeasurer>
26+
</div>
2527
</div>
26-
</div>
28+
</slot>
2729
<slot name="footer" />
2830
</div>
2931
</ResizeObserver>

0 commit comments

Comments
 (0)