mirror of
https://github.com/speatzle/nfsense.git
synced 2025-05-10 18:38:22 +00:00
add draggedRow event
This commit is contained in:
parent
5ebf7f1f4b
commit
bc35f3b1d2
2 changed files with 12 additions and 1 deletions
|
@ -23,6 +23,7 @@ let { columns, data, sort, sortSelf, sortBy, sortDesc, selection, draggable } =
|
|||
const emit = defineEmits<{
|
||||
(event: 'rowAction', index: number): void,
|
||||
(event: 'selectionChanged'): void
|
||||
(event: 'draggedRow', draggedRow: number, draggedOverRow: number): void,
|
||||
}>();
|
||||
|
||||
if (selection == undefined) {
|
||||
|
@ -101,7 +102,9 @@ function dragDropRow() {
|
|||
data.splice(draggedRow, 1);
|
||||
data.splice(draggedOverRow, 0, row);
|
||||
data = data;
|
||||
emit("draggedRow", draggedRow, draggedOverRow);
|
||||
}
|
||||
|
||||
// Reset drag data
|
||||
draggedRow = 0;
|
||||
draggedOverRow = 0;
|
||||
|
|
|
@ -15,6 +15,14 @@ const props = defineModel<{
|
|||
|
||||
let { title, loading, columns, data, selection, tableProps } = $(props);
|
||||
|
||||
const emit = defineEmits<{
|
||||
(event: 'draggedRow', draggedRow: number, draggedOverRow: number): void,
|
||||
}>();
|
||||
|
||||
async function draggedRow(draggedRow: number, draggedOverRow: number) {
|
||||
emit("draggedRow", draggedRow, draggedOverRow);
|
||||
}
|
||||
|
||||
</script>
|
||||
|
||||
<template>
|
||||
|
@ -23,6 +31,6 @@ let { title, loading, columns, data, selection, tableProps } = $(props);
|
|||
<slot/>
|
||||
</PageHeader>
|
||||
<div v-if="loading" >Loading...</div>
|
||||
<NiceTable v-else :columns="columns" v-model:selection="selection" v-bind="tableProps" :data="data"/>
|
||||
<NiceTable v-else :columns="columns" v-model:selection="selection" @draggedRow="draggedRow" v-bind="tableProps" :data="data"/>
|
||||
</div>
|
||||
</template>
|
Loading…
Add table
Reference in a new issue