323 lines
7.3 KiB
Vue
323 lines
7.3 KiB
Vue
<script setup lang="ts">
|
|
import ToastGrid from '../components/ToastGrid.vue';
|
|
|
|
const data = [
|
|
{
|
|
id: 549731,
|
|
name: 'Beautiful Lies',
|
|
artist: 'Birdy',
|
|
release: '2016.03.26',
|
|
type: 'Deluxe',
|
|
typeCode: '1',
|
|
genre: 'Pop',
|
|
genreCode: '1',
|
|
grade: '4',
|
|
price: 10000,
|
|
downloadCount: 1000,
|
|
listenCount: 5000,
|
|
_attributes: {
|
|
expanded: true,
|
|
},
|
|
_children: [
|
|
{
|
|
id: 491379,
|
|
name: 'Chaos And The Calm',
|
|
artist: 'James Bay',
|
|
release: '2015.03.23',
|
|
type: 'EP',
|
|
typeCode: '2',
|
|
genre: 'Pop,Rock',
|
|
genreCode: '1,2',
|
|
grade: '5',
|
|
price: 12000,
|
|
downloadCount: 1000,
|
|
listenCount: 5000,
|
|
_children: [],
|
|
},
|
|
{
|
|
id: 498896,
|
|
name: 'The Magic Whip',
|
|
artist: 'Blur',
|
|
release: '2015.04.27',
|
|
type: 'EP',
|
|
typeCode: '2',
|
|
genre: 'Rock',
|
|
genreCode: '2',
|
|
grade: '3',
|
|
price: 15000,
|
|
downloadCount: 1000,
|
|
listenCount: 5000,
|
|
_attributes: {
|
|
expanded: false,
|
|
},
|
|
},
|
|
{
|
|
id: 450720,
|
|
name: "I'm Not The Only One",
|
|
artist: 'Sam Smith',
|
|
release: '2014.09.15',
|
|
type: 'Single',
|
|
typeCode: '3',
|
|
genre: 'Pop,R&B',
|
|
genreCode: '1,3',
|
|
grade: '4',
|
|
price: 8000,
|
|
downloadCount: 1000,
|
|
listenCount: 5000,
|
|
_attributes: {
|
|
expanded: true,
|
|
},
|
|
_children: [
|
|
{
|
|
id: 587871,
|
|
name: 'This Is Acting',
|
|
artist: 'Sia',
|
|
release: '2016.10.22',
|
|
type: 'EP',
|
|
typeCode: '2',
|
|
genre: 'Pop',
|
|
genreCode: '1',
|
|
grade: '3',
|
|
price: 20000,
|
|
downloadCount: 1000,
|
|
listenCount: 5000,
|
|
_attributes: {
|
|
expanded: true,
|
|
},
|
|
_children: [
|
|
{
|
|
id: 490500,
|
|
name: 'Blue Skies',
|
|
release: '2015.03.18',
|
|
artist: 'Lenka',
|
|
type: 'Single',
|
|
typeCode: '3',
|
|
genre: 'Pop,Rock',
|
|
genreCode: '1,2',
|
|
grade: '5',
|
|
price: 6000,
|
|
downloadCount: 1000,
|
|
listenCount: 5000,
|
|
},
|
|
{
|
|
id: 317659,
|
|
name: "I Won't Give Up",
|
|
artist: 'Jason Mraz',
|
|
release: '2012.01.03',
|
|
type: 'Single',
|
|
typeCode: '3',
|
|
genre: 'Pop',
|
|
genreCode: '1',
|
|
grade: '2',
|
|
price: 7000,
|
|
downloadCount: 1000,
|
|
listenCount: 5000,
|
|
},
|
|
{
|
|
id: 583551,
|
|
name: 'Following My Intuition',
|
|
artist: 'Craig David',
|
|
release: '2016.10.01',
|
|
type: 'Deluxe',
|
|
typeCode: '1',
|
|
genre: 'R&B,Electronic',
|
|
genreCode: '3,4',
|
|
grade: '5',
|
|
price: 15000,
|
|
downloadCount: 1000,
|
|
listenCount: 5000,
|
|
},
|
|
],
|
|
},
|
|
],
|
|
},
|
|
],
|
|
},
|
|
{
|
|
id: 436461,
|
|
name: 'X',
|
|
artist: 'Ed Sheeran',
|
|
release: '2014.06.24',
|
|
type: 'Deluxe',
|
|
typeCode: '1',
|
|
genre: 'Pop',
|
|
genreCode: '1',
|
|
grade: '5',
|
|
price: 20000,
|
|
downloadCount: 1000,
|
|
listenCount: 5000,
|
|
},
|
|
{
|
|
id: 295651,
|
|
name: 'Moves Like Jagger',
|
|
release: '2011.08.08',
|
|
artist: 'Maroon5',
|
|
type: 'Single',
|
|
typeCode: '3',
|
|
genre: 'Pop,Rock',
|
|
genreCode: '1,2',
|
|
grade: '2',
|
|
price: 7000,
|
|
downloadCount: 1000,
|
|
listenCount: 5000,
|
|
},
|
|
{
|
|
id: 541713,
|
|
name: 'A Head Full Of Dreams',
|
|
artist: 'Coldplay',
|
|
release: '2015.12.04',
|
|
type: 'Deluxe',
|
|
typeCode: '1',
|
|
genre: 'Rock',
|
|
genreCode: '2',
|
|
grade: '3',
|
|
price: 25000,
|
|
downloadCount: 1000,
|
|
listenCount: 5000,
|
|
_attributes: {
|
|
expanded: false,
|
|
},
|
|
_children: [
|
|
{
|
|
id: 294574,
|
|
name: '4',
|
|
artist: 'Beyoncé',
|
|
release: '2011.07.26',
|
|
type: 'Deluxe',
|
|
typeCode: '1',
|
|
genre: 'Pop',
|
|
genreCode: '1',
|
|
grade: '3',
|
|
price: 12000,
|
|
downloadCount: 1000,
|
|
listenCount: 5000,
|
|
},
|
|
{
|
|
id: 265289,
|
|
name: '21',
|
|
artist: 'Adele',
|
|
release: '2011.01.21',
|
|
type: 'Deluxe',
|
|
typeCode: '1',
|
|
genre: 'Pop,R&B',
|
|
genreCode: '1,3',
|
|
grade: '5',
|
|
price: 15000,
|
|
downloadCount: 1000,
|
|
listenCount: 5000,
|
|
},
|
|
],
|
|
},
|
|
{
|
|
id: 555871,
|
|
name: 'Warm On A Cold Night',
|
|
artist: 'HONNE',
|
|
release: '2016.07.22',
|
|
type: 'EP',
|
|
typeCode: '1',
|
|
genre: 'R&B,Electronic',
|
|
genreCode: '3,4',
|
|
grade: '4',
|
|
price: 11000,
|
|
downloadCount: 1000,
|
|
listenCount: 5000,
|
|
},
|
|
{
|
|
id: 550571,
|
|
name: 'Take Me To The Alley',
|
|
artist: 'Gregory Porter',
|
|
release: '2016.09.02',
|
|
type: 'Deluxe',
|
|
typeCode: '1',
|
|
genre: 'Jazz',
|
|
genreCode: '5',
|
|
grade: '3',
|
|
price: 30000,
|
|
downloadCount: 1000,
|
|
listenCount: 5000,
|
|
},
|
|
{
|
|
id: 544128,
|
|
name: 'Make Out',
|
|
artist: 'LANY',
|
|
release: '2015.12.11',
|
|
type: 'EP',
|
|
typeCode: '2',
|
|
genre: 'Electronic',
|
|
genreCode: '4',
|
|
grade: '2',
|
|
price: 12000,
|
|
downloadCount: 1000,
|
|
listenCount: 5000,
|
|
},
|
|
{
|
|
id: 366374,
|
|
name: 'Get Lucky',
|
|
artist: 'Daft Punk',
|
|
release: '2013.04.23',
|
|
type: 'Single',
|
|
typeCode: '3',
|
|
genre: 'Pop,Funk',
|
|
genreCode: '1,5',
|
|
grade: '3',
|
|
price: 9000,
|
|
downloadCount: 1000,
|
|
listenCount: 5000,
|
|
},
|
|
{
|
|
id: 8012747,
|
|
name: 'Valtari',
|
|
artist: 'Sigur Rós',
|
|
release: '2012.05.31',
|
|
type: 'EP',
|
|
typeCode: '3',
|
|
genre: 'Rock',
|
|
genreCode: '2',
|
|
grade: '5',
|
|
price: 10000,
|
|
downloadCount: 1000,
|
|
listenCount: 5000,
|
|
},
|
|
];
|
|
|
|
const columns = [
|
|
{ header: 'Name', name: 'name', width: 300 },
|
|
{ header: 'Artist', name: 'artist' },
|
|
{ header: 'Type', name: 'type' },
|
|
{ header: 'Release', name: 'release' },
|
|
{ header: 'Genre', name: 'genre' },
|
|
{ header: 'checkbox', name: 'checkbox', editor:{ type: 'checkbox', options: {
|
|
listItems: [
|
|
{ text: 'true', value: true },
|
|
]
|
|
}}}
|
|
];
|
|
const treeColumnOptions = { name: 'name', useCascadingCheckbox: true };
|
|
|
|
const grid1Ref = ref();
|
|
|
|
function onClearClick() {
|
|
//grid1Ref.value?.clearGrid();
|
|
grid1Ref.value?.api()?.clear();
|
|
}
|
|
|
|
function onUpdateClick() {
|
|
//grid1Ref.value?.clearGrid();
|
|
console.log(grid1Ref.value?.api()?.getModifiedRows());
|
|
}
|
|
|
|
</script>
|
|
|
|
<template>
|
|
<div>
|
|
<button @click="onClearClick">clear api</button>
|
|
<br>
|
|
<button @click="onUpdateClick">update list</button>
|
|
<ToastGrid
|
|
ref="grid1Ref"
|
|
:data="data"
|
|
:columns="columns"
|
|
:treeColumnOptions="treeColumnOptions"
|
|
/>
|
|
</div>
|
|
</template> |