|
Lines 7-12
Link Here
|
| 7 |
:reduce="item => item[dataIdentifier]" |
7 |
:reduce="item => item[dataIdentifier]" |
| 8 |
@open="onOpen" |
8 |
@open="onOpen" |
| 9 |
@close="onClose" |
9 |
@close="onClose" |
|
|
10 |
@option:selected="onSelected" |
| 10 |
@search="searchFilter($event)" |
11 |
@search="searchFilter($event)" |
| 11 |
ref="select" |
12 |
ref="select" |
| 12 |
> |
13 |
> |
|
Lines 18-23
Link Here
|
| 18 |
v-on="events" |
19 |
v-on="events" |
| 19 |
/> |
20 |
/> |
| 20 |
</template> |
21 |
</template> |
|
|
22 |
<template #selected-option="option"> |
| 23 |
{{ selectedOptionLabel }} |
| 24 |
</template> |
| 21 |
<template #list-footer> |
25 |
<template #list-footer> |
| 22 |
<li v-show="hasNextPage && !this.search" ref="load"> |
26 |
<li v-show="hasNextPage && !this.search" ref="load"> |
| 23 |
{{ $__("Loading more options...") }} |
27 |
{{ $__("Loading more options...") }} |
|
Lines 48-53
export default {
Link Here
|
| 48 |
scrollPage: null, |
52 |
scrollPage: null, |
| 49 |
data: [this.selectedData], |
53 |
data: [this.selectedData], |
| 50 |
paginationRequired: false, |
54 |
paginationRequired: false, |
|
|
55 |
selectedOptionLabel: this.selectedData[this.label], |
| 51 |
} |
56 |
} |
| 52 |
}, |
57 |
}, |
| 53 |
computed: { |
58 |
computed: { |
|
Lines 131-136
export default {
Link Here
|
| 131 |
onClose() { |
136 |
onClose() { |
| 132 |
this.observer.disconnect() |
137 |
this.observer.disconnect() |
| 133 |
}, |
138 |
}, |
|
|
139 |
onSelected(option) { |
| 140 |
this.selectedOptionLabel = option[this.label] |
| 141 |
}, |
| 134 |
async infiniteScroll([{ isIntersecting, target }]) { |
142 |
async infiniteScroll([{ isIntersecting, target }]) { |
| 135 |
setTimeout(async () => { |
143 |
setTimeout(async () => { |
| 136 |
if (isIntersecting) { |
144 |
if (isIntersecting) { |
| 137 |
- |
|
|