Přeskočit na hlavní obsah

Akce

Akce jsou ve své podstatě jen tlačítka v datagridu, která mohou vyvolat různé události nad vybranými položkami.

Megio panel

Typy akcí

  • row action - spustí se po kliknutí na tlačítko v řádku tabulky.
  • bulk action - spustí se po kliknutí na tlačítko v hromadných akcích.

1. Registrace akcí

V předchozí kapitole jsme si ukázali, jak vytvořit modální okno. Nyní si ukážeme, jak vytvořit akci, která toto modální okno otevře.

assets/panel.ts
import 'megio-panel/styles'
import { createMegioPanel, useGlobals } from 'megio-panel'
import MyCustomModal from '@/assets/panel/datagrid/modals/MyCustomModal.vue'

const { modals, actions, columns, fields } = useGlobals()
const datagrid = { modals, actions, columns, fields }

// Mount panelu na DOM
createMegioPanel('http://localhost:8090/', {
datagrid: {
...datagrid,
modals: [
...modals,
// Vlastní modální okno otevírané přes akci `custom-action`
{
component: MyCustomModal,

// Název akce, která má otevřít tento modal
onAction: 'custom-action'
}
],
actions: {
// Akce pro konkrétní řádek
row: [
...actions.row,
{
// Label zobrazeného tlačítka
label: 'Moje row akce',

// Trigger akce, jenž je přiřazena MyCustomModal.vue
name: 'custom-action',

// Zobrazí tlačítko pouze u výchozí kolekce a u kolekce `user`
showOn: ['/collections/@', '/collections/user']
}
],

// Hromadné akce
bulk: [
...actions.bulk,
{
// Label zobrazeného tlačítka
label: 'Moje hromadná akce',

// Trigger akce, jenž je přiřazena MyCustomModal.vue
name: 'custom-action',

// Zobrazí tlačítko pouze u výchozí kolekce a u kolekce `user`
showOn: ['/collections/@', '/collections/user']
}
]
}
}
})

2. Build projektu

yarn build